Sunday, May 10, 2009

Agile Testing

A co-worker was recently asked “Who will be doing the system testing” on his project and this brought up the topic of Agile testing.  He sent an email asking “When doing a project using Agile and Scrum, how do you develop the system tests?  Do you script scenarios based on the stories?  The tasks?”

 

So in my reply, I was able to get a bit of a two for one deal out of it.  I was able to reply to his question and create a blog post as well.  Here is a paraphrased version of my reply:

----------------

“When doing a project using Agile and Scrum, how do you develop the system tests?  Do you script scenarios based on the stories?  The tasks? “

From the stand point of Agile engineering best practices, quality needs to be built into the system.  TDD is popular among the XP crowd.  Automated testing and continuous integration is key in Agile.  With the rapid pace of iterations, it is difficult to go back and manually test previously covered areas, so the automation of testing provides repeatable and repeated verification of correctness.

Using utilities to check for test coverage of code is helpful.  Sound testing at the engineering level is the first and best line of defense.  If something broken, stop the work until it is fixed.  Remember, a user story is not complete until it has been tested.  So yes, craft tests around the user stories, but also have the automated tests hit as many areas as possible.  Using tools such as nUnit for unit testing, Selenium for UI or interface tests, Fit/FitNess for acceptance tests, and LoadRunner for performance testing are all ideas in the automated test toolbox.  There will certainly be a bit of an engineering cost to implementing these tools, but I know there is research out there that does show that these engineering costs are paid back in savings in the quality of the code/project.

 

Specifically on this project, my thought is :

  • Ensure the team has a responsible level of code coverage through unit testing
  1. Consider using TDD (though I have not personally had great luck with it, but I’m no expert in it)
  • For each story, design a responsible set of test scripts for the story.  Hopefully these scripts are tests that can be automated.
  1. Work with the tester and the team to identify what responsible set of test scripts mean
  2. Work with the tester and the team to identify how to (and who will) manually test the non-automated tests

“Who will be doing the system testing?” 

The question “Who will be doing the system testing?” is a bit confusing.  By system test, do we mean a traditional test of the overall system?  Does this question ask who will be creating the test scripts and/or who will be performing any of the manual testing?  In terms of who should be writing the test scripts, I think that answer varies, but it ultimately should most likely be a team effort.  It varies due to the specifics of the project, domain, and available resources.

In this case where there may only be one person devoted to testing, if this is a highly skilled person, they can own the testing strategy and create testing stories and strategies which the team (along with this person) can execute.  If the person is not able to fill that role, the team will need  to determine the test strategy and work with the testing resources to implement and execute the testing strategy.

The concept of having a person(s) coming in fresh at the end of a project (or even project cycle) to test seems ineffective.  In the past I have seen this as just an exercise in helping the tester understand the system being developed and how to use the system.  The tester may stumble upon on few defects  or issues here and there, but from cost benefits standpoint, the returns seems quite low.  Having resources that are integrated with the team and developing tests iteratively with the team seems ultimately more efficient.

110 comments:

  1. At input, we're using a variation of TDD called Behavior Driven Development (BDD). It's TDD but testing the specific user stories, i.e:

    Given ____, And ____, Then ____

    TDD on a higher level.

    Our BDD framework allows us to setup tests for the given part, the And and the Then. Pretty cool stuff.

    ReplyDelete
  2. Thanks for your informative article on software testing. LoadRunner is popular automation software testing tool that used to validate a software application by generating actual load. Further, it gives precise information about a software application or environment. Loadrunner course in Chennai

    ReplyDelete
  3. hi,i have to learned to information.This information i have to really understand....hadoop training in chennai

    ReplyDelete
  4. Good Collection about the Sap Material for Freshers and Experience,

    saptraininginchennai

    ReplyDelete
  5. Really is very interesting, I saw your website and get more details..Nice work. Thanks regards,
    Refer this link below,
    javatraininginchennai

    ReplyDelete
  6. Thanks to Share the LoadRunner Material for Freshers,Link as,
    LoadRunnerTraining in Chennai

    ReplyDelete
  7. SAP stands for Systems Applications and Products in Data Processing. SAP is one of the leading ERP software in the world. SAP has been widely used by large to very large organizations and also by SMEs to manage their business processes.

    sap-fico-training-institute-in-chennai
    &
    sap-fico-training-institute-in-chennai

    ReplyDelete
  8. Microsoft Dynamics from beginner level to advanced techniques which is taught by experienced working professionals. With our Microsoft Dynamics Training in Chennai you’ll learn concepts in expert level with practical manner.

    microsoft-dynamics-training-institute-in-chennai

    Besant Technologies Reviews & Besant Technologies Complaints,

    reviews-complaints-testimonials.html

    ReplyDelete
  9. Thanks to share the useful information on your blog,

    Besant Tech Review

    ReplyDelete
  10. Oracle 11g Release 2 RAC & Grid Infrastructure Administration course provides an introduction to the general features and capabilities of Oracle Real Application Clusters (RAC) within the Oracle Grid Infrastructure environment.

    Oracle DBA Training Chennai

    ReplyDelete
  11. besant technologiesDecember 26, 2014 at 8:59 AM

    This page is dedicated for our Besant Technologies Reviews by our students. Please give your reviews here,

    Besant Technologies Video Reviews

    ReplyDelete
  12. Thanks for sharing this valuable information to our vision, if anyone looking a SAP training
    visit the link

    ReplyDelete
  13. Its really awesome blog..If anyone wants to get Software Testing Training in Chennai visit FITA IT academy located at Chennai. Rated as No.1 Software Testing Training Institutes in Chennai

    ReplyDelete
  14. Your blog is really useful for me, and I gathered some information from this blog. I did SAP Training in Chennai, at FITA Academy. It's really useful for me to make a bright career in IT industry.

    ReplyDelete
  15. SAP is one of the customer relationship management software and it support all end to end customer related process. To know more details about SAP modules please refer the following site.
    Regards..
    SAP Training in Chennai

    ReplyDelete
  16. Oracle is a relational database management system produced by oracle corporation. Nowadays most of the multinational companies used this oracle database for storing and managing their data's and programs. So learning Best Oracle Training in Chennai is one of the best idea to make a bright career.

    ReplyDelete
  17. Excellent information. HTML5 is a markup language used for designing responsive website and it is also used for structuring and presenting the website content.
    HTML5 Training | PHP Course in Chennai



    ReplyDelete
  18. Hello,
    Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality, usability and consistency. mobile testing training in Chennai can be automated or manual type of testing.

    ReplyDelete
  19. Nice information. Android is one of the most popular mobile operating system developed by Google. Learning Android Course in Chennai is useful to make a wonderful future in mobile application development field.

    ReplyDelete
  20. Nice information. Salesforce is a most powerful CRM tool used for manage all customers including potential customers. Salesforce Training in Chennai offering this course with experienced professionals.

    ReplyDelete
  21. Really nice post. Unix is a multiuser and multi tasking operating system at the same time. Unix Training Chennai offering real time Unix course at reasonable cost.

    ReplyDelete
  22. Really nice post. SEO is one of the digital marketing techniques used for improve the website ranking in search engine result page. To know more details please call 9003623340.
    Regards..
    SEO Training in Chennai

    ReplyDelete
  23. Thanks for your informative post on selenium automation testing tool. Your article helped me a lot in understanding the future of automation testing tool and its career prospects. Selenium Training | Best Selenium training institute in Chennai

    ReplyDelete
  24. Testing is the only way to deliver reliable products in the Information Technology market(Software testing training in chennai). Articles like this are vital in improvising one's ability as a software testing professional(Software testing training institutes in chennai). Thank you so much for sharing this information in here(Software testing training institute in chennai). Keep blogging.

    ReplyDelete
  25. ESIC Haryana Paramedical Staff Nurse Recruitment 2016

    I appreciate you sharing this blog article.Thanks Again. Want more........

    ReplyDelete
  26. JSSC Kakshpal Recruitment 2016

    its impressive article regarding Government Jobs in India Thanks to the author

    ReplyDelete
  27. Thank you for taking the time to provide us with your valuable information. We strive to provide our candidates with excellent care and we take your comments to heart.As always, we appreciate your confidence and trust in us.
    ... iOS Training in chennai

    ReplyDelete
  28. It is easily used to learn the Agile Testing.It is fully explained.We also provide the abap training in our institute.To visit and use it for future.
    abap-training in chennai

    ReplyDelete
  29. I got a nice answer for the system testing concept which is innovative and efficient.


    abap training in chennai

    ReplyDelete
  30. All things considered, there you have it: a few WordPress talk modules to look over. They all convey something somewhat distinctive to the table yet what they share is a goal to make collaborating with and changing over clients only a tiny bit less demanding.
    Wp Chat

    ReplyDelete
  31. This is an incredible rousing article.I am essentially satisfied with your great work.You put truly supportive data. Keep it up. Services Outbound Calling

    ReplyDelete
  32. I have never read such quality post/article as yours, ever on the web. Your post/article is very detailed and insightful yet easy to understand. Please write more frequently for this/our community.
    Viral Videos

    ReplyDelete
  33. Excellant post!!!. The strategy you have posted on this technology helped me to get into the next level and had lot of information in it.
    cloud computing training in chennai | cloud computing courses in chennai

    ReplyDelete
  34. Excellant post!!!. The strategy you have posted on this technology helped me to get into the next level and had lot of information in it.
    Node JS training in chennai | Node JS training institute in chennai

    ReplyDelete
  35. nice posts about agile testing..
    SAS Institute introduced the SAS Certified Professional Program,training proper understanding of how the SAS software works.
    SAS online training in hyderabad

    ReplyDelete
  36. SAP HANA training in hyderabad,This is the best path You can Learn COmplete Course with full fledge knowledge of SAP.
    SAP HANA online training



    ReplyDelete
  37. Thanks for sharing this informative content that guided me to know the details about the training offered in different technology.
    digital marketing course in chennai | digital marketing training

    ReplyDelete
  38. Excellent post!!!. The strategy you have posted on this technology helped me to get into the next level and had lot of information in it.
    salesforce training in chennai | salesforce training institute in chennai

    ReplyDelete
  39. agile testing blog nice posts..

    Hadoop training in hyderabad.All the basic and get the full knowledge of hadoop.
    hadoop training in hyderabad

    ReplyDelete
  40. agile testing nic eppost thanku for sharing..
    ]
    informatica online training


    ReplyDelete
  41. Thanks for Sharing the valuable information and thanks for sharing the wonderful article..We are glad to see such a wonderful article..
    QTP Training in Chennai | QTP Training Institute in Chennai | QTP Training

    ReplyDelete
  42. This is a wonderful article, Given so much info in it, These type of articles keeps the users interest in the website, and keep on sharing more ... good luck. Best Selenium Training in Chennai |Selenium Training in Chennai | Best Selenium Training Center in Chennai
    Android Training in Chennai

    ReplyDelete
  43. Great article. Thanks for sharing such a useful post.

    wordpress Training in Chennai

    ReplyDelete
  44. Thanks for Sharing the valuable information and thanks for sharing the wonderful article..We are glad to see such a wonderful article..
    microstrategy training in chennai

    ReplyDelete
  45. • can any one suggest me about testing training institute with 100 % placement in adyar.
    informatica training in chennai

    ReplyDelete
  46. I have read your blog its very attractive and impressive. I like it your blog.

    Java Training in Chennai Core Java Training in Chennai Core Java Training in Chennai

    Java Online Training Java Online Training Core Java 8 Training in Chennai Core java 8 online training JavaEE Training in Chennai Java EE Training in Chennai

    ReplyDelete
  47. Java Training Institutes Java Training Institutes Java EE Training in Chennai Java EE Training in Chennai Java Spring Hibernate Training Institutes in Chennai J2EE Training Institutes in Chennai J2EE Training Institutes in Chennai Core Java Training Institutes in Chennai Core Java Training Institutes in Chennai

    ReplyDelete
  48. Hibernate Online Training Hibernate Online Training Hibernate Training in Chennai Hibernate Training in Chennai Java Online Training Java Online Training

    Hibernate Training Institutes in ChennaiHibernate Training Institutes in Chennai Java Online Training Java Online Training Java Online Training Java Online Training

    ReplyDelete
  49. for interview tips on Software/Network/Hadoop & etc login to s4techno.com/forum
    For gaining additional knowledge on Software/Network/Hadoop login to s4techno.com/blog/

    ReplyDelete
  50. awesome blog with informative content... Thanks for sharing such a nice blog... Java Training in Chennai | Dot Net Training in Chennai

    ReplyDelete
  51. Excellent sharing. Testing is a wonderful field for IT peoples. Want to learn Selenium Training reach GangBoard. Hadoop Online Training

    ReplyDelete
  52. Nice sharing. R is a language and environment for statistical computing and graphics. Want to make a career in R Programming. Learn R Programming Online Training course @ GangBoard. We are the best provider of online training on evergreen technologies.

    ReplyDelete
  53. You have done really great job. Your blog is very unique and informative. Thanks. Devops Online Training | Data Science Online Training

    ReplyDelete
  54. Thanks for sharing thisSelenium Training in Chennaiinformative content that guided me to know the details about the training offered in different technology.
    Selenium Training | Selenium Training Classes in Chennai

    ReplyDelete
  55. Great information. I have got some important suggestions from it. I'm working in ERP Software Company in Chennai | ERP Providers in Chennai

    ReplyDelete
  56. Besant Technologies Offers best Android Training in Chennai with best placement support. The training sessions are handled by working professionals who are experts in teaching Android according to needs of IT companies. Android Training in Chennai |
    Android Training in Chennai |
    Android Training in Chennai |
    Android Training in Chennai |

    ReplyDelete
  57. Really Nice Blog. Thank you for Sharing. We are the best erp software providers in chennai. For more details call +91 9677025199 or email us on info@bravetechnologies.in.
    ERP in Chennai

    ReplyDelete
  58. Thanks for your informative article. In the agile software development process, automation testing tool like LoadRunner to make your software validation process lot effective.Loadrunner Course in Chennai | Loadrunner training institute in Chennai

    QTP Course in Chennai | QTP training

    ReplyDelete
  59. Thanks for the awesome share
    We at Colan Infotech Private Limited best web design company in chennai,is Situated in US and India,
    will provide you best service in qa testing services
    Design Services and Colan Infotech has a group of exceedingly dedicated, inventive and creative experts with an energy for delivering exciting ,
    helpful and stylish Web and Mobile Applications, We are one of the best software testing services company
    and of course we stepped in bangalore too we are best qa and testing services
    can provide quality assurance and testing services,
    we are the best among the software testing company india

    ReplyDelete
  60. I am exploring this subject as part of a report I need to do on possible careers I might choose. Thank you for your post it has valuable information on this topic. This Video Is Not Available In Your Country

    ReplyDelete

  61. I have read this blog, it is interesting and informative.thanks for sharing...
    campus events | college paper presentaion

    ReplyDelete
  62. This is excellent information. It is amazing and wonderful to visit your site.Thanks for sharing this information,this is useful to me...
    Android Training in Chennai
    Ios Training in Chennai

    ReplyDelete
  63. Hi,


    Thanks for sharing the informative article.


    http://kosmiktechnologies.com/selenium/

    ReplyDelete
  64. Agile Testing is one of the SDLC Model but is this using currently? I heard about Agile testing but i dont know the concept of this testing. With the help of your blog I learnt agile testing thanks for sharing such a nice blog., CCNP Training in Chennai | CCNA Training in Chennai

    ReplyDelete
  65. digital marketing training indore

    http://www.dmws.co.in/best-digital-marketing-training-institute-course-indore/

    ReplyDelete
  66. I read this article. I think You put a lot of effort to create this article. I appreciate your work.

    PhD Thesis Writing Services
    Dissertation Writing Services
    Research Paper Writing Services

    ReplyDelete
  67. This article is a particular subject for the agile testing tools that addresses unique aspects of T&E of SOS and outlines strategies and techniques for handling them.If want become learn for Hadoop Training with Java code using MapReduce concepts and learn Big Data knowledge to real-time projects reach us Besant Technologies.To click the training details,Hadoop Training in Chennai | Best Hadoop Training Institute in Chennai

    ReplyDelete
  68. Pretty and informative article, thanks for sharing your information.. keep rocks...
    Software Testing Training in chennai | Manual Testing Training in chennai

    ReplyDelete
  69. Buying a franchise can be an investment in your future. But as with any major decision, you should thoroughly research the franchise industry, the franchise model and the pros and cons of owning a franchise.
    Franchise Opportunities
    Franchise Opportunities India

    ReplyDelete
  70. Thanks for sharing this valuable information.and I gathered some information from this blog.
    IEEE Project Center in Chennai | Data Mining Project Center in Chennai| Android Project Center in Chennai

    ReplyDelete