CS 490 Software Testing Fall 2009 Implement Unit Test Framework for Application running on a Pocket...

17
CS 490 Software Testing Fall 2009 Implement Unit Test Framework for Application running on a Pocket PC 2003 device 09/18/09 1 Framework for Unit-testing Development Group Team Leader: Lauren Stuart Team: Nate Frost, Jennifer Long, Mike Noah, Brad Van Dyk Website: http://redlea.net/490/

Transcript of CS 490 Software Testing Fall 2009 Implement Unit Test Framework for Application running on a Pocket...

CS 490 Software TestingFall 2009

Implement Unit Test Frameworkfor Application running on a

Pocket PC 2003 device

09/18/09 1

Framework for Unit-testing Development Group

Team Leader: Lauren StuartTeam: Nate Frost, Jennifer Long, Mike Noah, Brad Van Dyk

Website: http://redlea.net/490/

Agenda

• Goal• Problem• Importance• Project Plan• Responsibilities

• Questions

09/18/09 2

Goal

• Develop unit test framework for Cyberonics development environment• Pocket PC 2003• Embedded Visual Studio SP3

• Maintain consistent communication• Provide project documentation

09/18/09 3

Problem

• Cyberonics does not have formal unit test procedures

• Currently debug and step through– Slow, tedious

• No unit tests frameworks for Pocket PC–Need customized framework

09/18/09 4

Importance

• Class III medical device– Requires strict test standards– Less room for human error

• Help design, develop, execute tests– Automation– Easier to test–More time for development

• Provides reports– Formal testing process

09/18/09 5

Requirements• Enable Cyberonics to create and execute unit

tests into existing code base• Provide constructs such as asserting equal, null,

etc.• Allow Cyberonics to run unit tests in batches to

enable test automation• Provide summary of test result with details of

failures• Provide the code coverage report

09/18/09 6

Investigation Report• Investigated many existing frameworks• Complexity – work involved in port/develop• Meets most Cyberonics requirements

• CPPUnit• JUnit in class• Existing documentation/community• Open source• Full-featured

• Other frameworks as references

09/18/09 7

Project Plan• Divide into three teams• CPPUnit porting into eVC++4• CPPUnit in VS2008• Pocket PC Application Development

09/18/09 8

CPPUnit eVC Team• Main Goal• Port CPPUnit into eMbedded Visual C++ 4

• Sub Goals• Map initial obstacles to the overall goal• Investigate RTTI library• Make small parts work and build up

• 2 Members• Jenni and Brad

09/18/09 9

CPPUnit VS2008 Team• Main Goal• Understand how CPPUnit works• Identify obstacles for eVCTeam

• Sub Goals• Set up CPPUnit in VS2008• Explore functionality

• 1 Member• Lauren

09/18/09 10

Pocket PC App Team• Main Goal• Application for automated testing

• Sub Goals• Familiarize with environment• Design GUI

• 2 Members• Mike and Nathan

09/18/09 11

09/18/09 12

CPPUnit VS CCPUnit eVC Pocket PC App

09/18/09 13

CPPUnit VS CCPUnit eVC Pocket PC App

Setup eVC 4 SP3CPPUnit Features and Requirements Basic CPPUnit

FunctionalityDesign

Specification

09/18/09 14

CPPUnit VS CCPUnit eVC Pocket PC App

Setup eVC 4 SP3CPPUnit Features and Requirements Basic CPPUnit

Functionality

Advanced Functionality

Design Specification

Prototyping

09/18/09 15

CPPUnit VS CCPUnit eVC Pocket PC App

Setup eVC 4 SP3CPPUnit Features and Requirements Basic CPPUnit

Functionality

Advanced Functionality

Design Specification

Prototyping

Integrate Advanced Features into GUI

Milestones• October 2nd: Interim Report Presentation• October 16th: Status Report• October 30th: Interim Report Presentation• November 1st: Begin integration of all CPPUnit

features with the GUI• November 13th: Status Report• November 23rd: Finish Integration and

Documentation• December 4th: Preliminary Demo• TBA: Final Presentation09/18/09 16

Project Status

09/18/09 17

CPPUnit VS CCPUnit eVC Pocket PC App

Setup eVC 4 SP3CPPUnit Features and Requirements Basic CPPUnit

Functionality

Advanced Functionality

Design Specification

Prototyping

Integrate Advanced Features into GUIBeginning Nov. 1st