Effective QA practices for Continuous Integration development projects

2
Effective QA practices for Continuous Integration development projects Continuous Integration practice and its benefits Continuous Integration benefits: Continuous Integration (CI) is a practice in agile methodologies where all developer workspaces are merged with a shared mainline several times a day.In Continuous integration practice, software development is achieved by adding new code several times a day, but also by refactoring existing codes written during previous iterations. This refactoring can be safely achieved only with a strong test system so that From the above mentioned points, you can clearly see the need of an efficient quality control system that replaces the regular practice of following quality control processes with different phases and cycles for testing systems after completing all development. Also, continuous integration quality control has to be different from the traditional quality control processes of phased unit, system and system integration Developers detect and fix integration problems continuously by avoiding last-minute chaos at release dates Early warning of broken/incompatible code Early warning of conflicting changes Perform immediate unit testing for all changes Immediate feedback to developers on the quality, functionality and system-wide impact of code Metrics generated from automated testing and CI (such as metrics for code coverage, code complexity, and features complete) focus developers on developing functional, quality code, and help develop momentum in a team Continuous Integration quality control Faster, better and cheaper is the expected result of any given hour in any given business case. Now that many organizations have adopted continu In this article let us have a quick look at Continuous integration practice & its benefits and why the combination of behaviour driven testing and ous integration in practice, it is for testers to get aligned to continuous integration development practices. exploratory testing has to be the best fit for continuous integration quality control. the whole software doesn’t break when new code is added or when existing ones are modified. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- testing.

Transcript of Effective QA practices for Continuous Integration development projects

Page 1: Effective QA practices for Continuous Integration development projects

Effective QA practices for Continuous Integration development projects

Continuous Integration practice and its benefits

Continuous Integration benefits:

Continuous Integration (CI) is a practice in agile methodologies where all developer workspaces are merged with a shared mainline several

times a day.In Continuous integration practice, software development is achieved by adding new code several times a day, but also by

refactoring existing codes written during previous iterations. This refactoring can be safely achieved only with a strong test system so that

From the above mentioned points, you can clearly see the need of an efficient quality control system that replaces the regular practice of

following quality control processes with different phases and cycles for testing systems after completing all development. Also, continuous

integration quality control has to be different from the traditional quality control processes of phased unit, system and system integration

Developers detect and fix integration problems continuously by avoiding last-minute chaos at release dates

Early warning of broken/incompatible code

Early warning of conflicting changes

Perform immediate unit testing for all changes

Immediate feedback to developers on the quality, functionality and system-wide impact of code

Metrics generated from automated testing and CI (such as metrics for code coverage, code complexity, and features complete) focus

developers on developing functional, quality code, and help develop momentum in a team

Continuous Integration quality control

Faster, better and cheaper is the expected result of any given hour in any given business case. Now that many organizations have adopted continu

In this article let us have a quick look at Continuous integration practice & its benefits and why the combination of behaviour driven testing and

ous integration in practice, it is for testers to get aligned to continuous integration development practices.

exploratory testing has to be the best fit for continuous integration quality control.

the whole software doesn’t break when new code is added or when existing ones are modified.

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

testing.

Page 2: Effective QA practices for Continuous Integration development projects

https://twitter.com/AspireSystems www.linkedin.com/company/aspire-systemshttp://www.slideshare.net/AspireSystems

- Average time spent on the portal increased from 19 sec to 130 sec, because of advanced technologies used in UX engineering

- 30% of development time was saved using our Solution Accelerators

- The Portal can support almost one million profiles and it is further scalable

- The portal was designed in an eventual consistency model, to accommodate enormous number of activities from end users

I can only see Behaviour driven testing which is based on the principle of unit testing focuses on behavioral specification of software units as

Only possible cons which I encountered while practicing BDT is the possibility of missing system integration scenarios between the codes

a best fix to continuous integration quality control

Develop test scenarios that cover software behaviour as in Behaviour Driven Development feature pattern. Note: BDT test scenarios

can be created even when development team follow methodology other than Behaviour Driven Development

Execute test scenarios with manual/automated scripts. Tools like Cucumber, JBehave and Selenium support BDT test automation with

can be integrated with continuous integration servers

Automated behaviour driven testing – Prepare test scenarios using BDT approach and automate possible test scenarios in the effort

available. Integrate Continuous integration servers with BDT automation tools for testing inline web & native application.

Manual behaviour driven testing – Execute manually the test scenarios which are not automated.

Exploratory testing – Reach out of box by executing exploratory testing to ensure test complete.

written in previous iteration with the current iteration. Exploratory testing helps me in addressing the missing system integration scenarios

within the iterations with minimum effort.

Cem Kaner, who coined the term in 1983, now defines exploratory testing as “a style of software testing that emphasizes the personal

freedom and responsibility of the individual tester to continually optimize the quality of his/her work by treating test-related learning, test

design, test execution, and test result interpretation as mutually supportive activities that run in parallel throughout the project

I strongly recommend that balancing Exploratory Testing with manual and automated Behaviour Driven Testing is the way to go for continu

Now that you are at the end of this article, my question to you is whether you agree with the mentioned balancing act as the best bet for

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

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

The balancing act: BDT and Exploratory Testing

ous integration quality control.

Though BDT helps in testing the business outcomes and unit conditions as early as possible in development life cycle, exploratory testing will

help in going out of box and catching the interface related testing gaps which we would have missed in BDT test script.

continuous integration quality control? If not, feel free to comment with your point of view.

About Aspire

Aspire Systems is a global technology services firm serving as a trusted technology partner for our customers. We work with some of the

world's most innovative enterprises and independent software vendors, helping them leverage technology and outsourcing in our specific

Our core philosophy of "Attention. Always." communicates our belief in lavishing care and attention on our customers and employees.

USA

Aspire Systems, Inc.

1735 Technology Drive

Suite 260, San Jose, CA - 95110, USA

Tel: +1-408-260-2076, +1-408-260-2090

Fax: +1-408-904-4591

E-mail: [email protected]

INDIA

Aspire Systems (India) Pvt. Ltd.

1/D-1, SIPCOT IT PARK

Siruseri, Chennai - 603 103

Tamil Nadu, India

Tel: +91-44-6740 4000

Fax: +91-44-6740 4234

E-mail: [email protected]

UK

Aspire Systems

1, Lyric Square, Hammersmith

London - W6 0NB, UK

Tel: +44 203 170 6115

E-mail: [email protected]

include Product Engineering, Enterprise Transformation, Independent Testing Services and IT areas of expertise. Our services

Infrastructure Support services

Find Us

Slideshare LinkedIn Twitter