Featured Post

Showing posts with label Software Testing. Show all posts
Showing posts with label Software Testing. Show all posts

Thursday, September 29, 2016

calculating cyclometric complexity using Control Flow Graphs.

Given the following fragment of code how many test cases are required for 100% decision coverage?
Give the test cases?   
if width>length
then biggest_dimension=width if height>width
then biggest_dimension=height end_if
else biggest dimension=length if height>length
then biggest_dimension=height end_if
end_if






Cyclometric complexity=number of regions=4(3+1)
                                          =number of predicates+1=3+1
                            E-V+2=     12-10+2 = 4


Number of test cases required for 100% decision coverage are 4



statement coverage, decision coverage, branch coverage, control flow graphs, program graphs, dd graphs, du,dl, slices, decision tables slices dices , independent paths

Saturday, September 3, 2016

Different types of software testing


                                       http://cjuschools.blogspot.in/


Testing methods:
     Software testing is a process of execution of the given software with an intention of finding bugs in it. It is one of the important phase in software development life cycle. During testing we execute each and every piece of code at all levels and compare the calculated results with expected results.
The man aim of testing team is to prove that the developed software product is wrong. Testing is a never ending process.

The following are the different types of testing 

1) Unit testing

2) Integration testing

3) Validation testing

4) System testing

1) Unit testing: During this phase each component or module is tested independently.At a time we can apply parallel testing to many modules. At this testing we are going to check data structures of a module, internal logic of the module or component, interface testing, boundary testing etc

2) Integration testing: Completion of unit testing leads to integration testing. In this testing we are going to check the flow of data between different modules, interaction between different modules, module dependencies etc.
Integration testing are sub divided into incremental and non incremental testing

Under incremental testing we integrate one by one and test the partial integrated product.Top-down, Bottom-up, smoke and regression testing are examples of incremental integration testing

Under non incremental integration testing we integrate all the modules and then we apply integration testing on the final product. Big Bang approach is an example of non incremental integration testing.

3) validation testing: When the product is finally developed and gone through unit and integration testing then validation testing must be done. This test ensures that the final product developed meets user requirements and satisfies functional, behavioral requirements etc.

Aplha testing: End users are called to developers site and are exposed to the system. Under the instructions of developer the user will use the product. At this time the software engineer note all the problems faced by the users during their operations.

Beta testing: The product is delivered to the end users. In the absence of software engineer the end user will use the system and the problems or errors are reported by end users.

4) System testing: Once the product has completed all the tests then the system must be deployed in the clients system with user environment.This test checks to what extent the system is working in client environment. i,e., system testing checks the execution of software product at client environment or system.
Under system testing the following testings are performed.

Recovery testing: This testing ensures that if any errors occur or code manipulated then the system must resets to original state

Security testing: This testing checks whether the system is safe or not. The developers are divided into different groups and tries to hack the system.

Stress testing: This testing checks to what extent the system is reliable and how it handling requests if load increases.

Performance testing: This testing is performed to check internal aspects of the system like hardware support software support etc

                                                        automated testing selenium

testing, different types of testing, performance testing, alpha and beta testing, categorization if testing techniques, system testing, smoke testing, big bang testing, testing plan, test cases

Thursday, July 7, 2016

difference between stub and driver:miscellaneous



Both stub and driver are used in software testing to test the sample code. Both are used to simulate the interface between components. For suppose in a project there are three modules. A is a main module and B,C are sub modules. i.e, A depends on sub modules B and C to complete its work.

stub: For example at a certain time consider like main module code A is completed but still B and C module codes are still in development. At this time we develop a dummy code that simulates both B and C respectively and carries our test. The dummy code here is call stub.

driver: For example at a certain time consider like sub modules B and C have completed their coding and ready for testing . But the main module is still under development . At this situation we develop a sample code(dummy) to simulate the main module A. The sample code we developed is called driver.

* Both stubs and drivers are dummy modules which simulate some part of the project when required.

* stubs are used when sub programs are under development stage
* stubs are used in top down approach

* drivers are used when main module is under consideration

*drivers are used in bottom up approach


                        automated testing



software testing, stub, drivers, component testing,simulators, phython, alpha testing beta testing.