How to implement TDD in DevOps : Right and Wrong

This talk will cover the pattern of following TDD when developing using Automated Configuration Management frameworks like Chef/Puppet. Real usability of Testing is based on keeping sanctity of WHAT needs to be tested WHERE. Talk will cover the same in domain of DevOps.

This will cover the Concpetual Mapping of Unit Testing, Integration Tests and Performance Tests in reference of development under DevOps practices.

The common mistakes that used to happen in DevOps domain was direct mapping of Business Application TDD model. Like porting of Testing tools such as rspec, cucumber for DevOps utilities and blindly implementing to show 100% coverage whether the Tests were actually justified there or not.

We'll be seeing such examples and the correct way to implement justified Tests for your DevOps set-up.

For example:

Port of test packages like RSpec (puppet-rspec, chefspec) shall be used for only which cases and how they are totally un-justified for to plainly test the Resources which are just imitations without a real node.

 
2 favorite thumb_down thumb_up 11 comments visibility_off  Remove from Watchlist visibility  Add to Watchlist
 

Outline/structure of the Session

Pointing out the main process/features involved in development of Automated Configuration Management solution discussing how, where and when to Test.

I'll be covering different use-cases of Automate Configuration Management utilities (like Chef/Puppet) and mention the Wrong and Right way to Test those scenarios.

It will end with Quick Tips of WhiteList and BlackList for Testing in Auto-Config-Mgmt utilities.

Learning Outcome

Knowledge of practices to be followed for TDD in Automated Configuration Management development.

Target Audience

Anyone involved with DevOps practices.

schedule Submitted 4 years ago

Comments Subscribe to Comments

comment Comment on this Proposal
  • Pramod Sadalage
    By Pramod Sadalage  ~  4 years ago
    reply Reply

    Abhishek,

    Do you want to maybe change the title to clearly state that you are going to talk about testing (in an automated way) chef/puppet scripts. Audience may get confused about the content of the talk.

    • Abhishek Kumar
      By Abhishek Kumar  ~  4 years ago
      reply Reply

      I've tried making it more clear. But this is not on Automated Testing. This is on what's the correct way to implement TDD over DevOps implementations. What are the anti-pattern in use currently and what's right way to go?

      • Joel Tosi
        By Joel Tosi  ~  4 years ago
        reply Reply

        Is 20 minutes really enough for this?

        • Abhishek Kumar
          By Abhishek Kumar  ~  4 years ago
          reply Reply

          It's mainly a talk on what all anti-atterns are in practice and what/why is correct path to go. Not a hands-on tutorial.

          I'm not there to make people understand importance of TDD. It's for people who wanna do it right.

          • Joel Tosi
            By Joel Tosi  ~  4 years ago
            reply Reply

            Thanks for clarifying that Abhishek. Could you provide some examples of the anti-patterns and the paths you will be covering?

            Is this talk only about Configuration Management or about a complete devops / infrastructure as code testing?  I see only CM in the learning outcomes.

            Thanks,

            Joel

            • Doc Norton
              By Doc Norton  ~  4 years ago
              reply Reply

              I am with Joel on this; Can you provide some examples of the anti-patterns and paths you will share?

               

              • Abhishek Kumar
                By Abhishek Kumar  ~  4 years ago
                reply Reply

                @JoelTosi @DocNorton

                I think you guys missed looking at the blog link I provided  http://justfewtuts.blogspot.in/2013/05/testing-chaos-with-automated.html 

                It has the main theme and ideas around what my thought is.

                • Doc Norton
                  By Doc Norton  ~  4 years ago
                  reply Reply

                  I did read the blog post. The blog post is generally informative, but still doesn't tell us what you specifically intend to cover in this session or how you're going to use the time.

                  Can you save all of the reviewers some effort and add the relevant details to this proposal? 

                  Sorry to sound harsh, but there are hundreds of proposals to review. If it is not worth your effort to make the submission detailed and professional, how can we trust it is worth your effort to make the presentation professional?

                   

                  • Abhishek Kumar
                    By Abhishek Kumar  ~  4 years ago
                    reply Reply

                    Updated some fields in the Proposal, if the updated fields and detailed blogpost still deems effortless... not to sound snarky, I'll prefer writing next part to that post than updating this proposal again and again.

  • steve ropa
    By steve ropa  ~  4 years ago
    reply Reply

    I have mixed feelings on the title. It certainly grabs the attention and gets me to read the abstract. "How to implement TDD in DevOps" would probably get me to walk into the room, though.

    • Abhishek Kumar
      By Abhishek Kumar  ~  4 years ago
      reply Reply

      changed it... whatever is more clear for the readers