Advisor - Simanta Mitra Client - Shawn Hanson & Dave Froslie (Microsoft) Group - Dec10-08 Ian Dallas Jacob Grimm Yuriy Gritsenko Matt Smith Problem Users & Use Cases Deliverables Functional Requirements Non-Functional Requirements Primary User – VS Tester ◦ Works entirely in VS 2010 ◦ Develops requirements & test cases ◦ Executes test cases Secondary User – AX Developer ◦ Works entirely in Dynamics AX ◦ Develops code ◦ Writes test cases An executable which can be wrapped by VS Generic Test Case Wrapper which allows users to: ◦ Manage Dynamics AX Tests ◦ Execute Dynamics AX Tests ◦ Report on Dynamics AX Tests Tutorials which guide users to: ◦ ◦ ◦ ◦ ◦ Create a generic test project Create a generic test case Create a build Publish test results to an associated build View published test results Management 1. ◦ ◦ 2. ◦ 3. ◦ ◦ ◦ 4. ◦ View wrapped AX test suite names within VS Choose AX test suites to run within VS Execution AX test case results displayed in VS Reporting Display Error/Fail message normally associated with test cases Report Pass/Fails Report number of test cases that were executed Publish Store results in TFS for viewing and later retrieval Written in .NET managed code Tutorials & documentation designed for ease of use Applicable to any valid Dynamics AX test cases Takes no more than 10% longer than when run in Dynamics AX Functional Decomposition User Interface Testing Evaluation Generic AX Test Case Runner Test Results XML File (TRX) Generic Test Wrapper ◦ Invokes AX32.exe with arguments ◦ Converts XML output from AX32.exe into TRX for VS ◦ File generated by ‘Generic AX Test Case Runner’ ◦ XML format VS can read ◦ Contains all information about the test cases that were run ◦ Built into VS ◦ Allows management & execution of test cases not natively supported by VS ◦ Invokes command line argument of executable that can run tests ◦ Requires ‘Generic AX Test Case Runner’ to be used Test Name Test Description Expected Outcome Valid Test Case A valid generic test case is run The results for the test case run in AX are shown in VS AX32.exe not available The path for AX32.exe does not contain AX32.exe Test runner catches this and returns an error to VS No Tests Specified No test suites are entered in the generic wrapper An error message “No filenames found in arguments.” is returned by the test execution Invalid Test Name An invalid test suite name is entered in the generic wrapper Dynamics AX returns an error message that our test runner handles Improperly Formatted Summary Result File Location An improperly formatted summary result XML file location is passed to the runner An error message “Cannot read summary results file” is returned by VS Test Name Test Description Expected Outcome Test Case Pass A wrapped test case passes when run VS displays the wrapped AX test case as a pass Test Case Fail A wrapped test case fails when run VS displays the wrapped AX test case as a failure along with a description of why the test case failed Test Case Error A wrapped test case throws an error when run VS displays the wrapped AX test case with an error along with an error message Generic Test Timeout The generic test case timeout is hit by the test case execution No results returned to the user Tests execute in Dynamics AX All results returned from Dynamics AX Results displayed in Visual Studio Can publish results to TFS Results can be retrieved from TFS All above tasks can be accomplished by following tutorials Multiple demos with client Initial ◦ Use of Microsoft Test & Lab Manager Why Changed ◦ Required functionality not available Invoking Tests Saving/Retrieving test results Initial ◦ Excel Test Case Migrator Why Changed ◦ Migrated test cases: Could not be associated with results Were not generic No fields in TFS for information about the tests to be linked to Initial ◦ Invoke AX over a network Why Changed ◦ Overly complicated the solution Required installation of a Web Server ◦ Outside the scope of what client wanted Project is a “How To” Focus is not on adding features Generic AX Test Case Runner executable ◦ Works with VS 2010 Generic Test Wrapper Tutorials ◦ How to: Create a test project & generic test Get generic test to invoke AX Test Case Runner Create a build using TFS Publish the test results after running the generic test Publish to Codeplex