User:Mevans/EnvironmentNote
Jump to navigation
Jump to search
Scenario One
Below depicts a realistic definition of the testruns for testing the basic platform compatibility matrix for the firefox browser.
Product: FirefoxBrowser {}
//==================================================================
//==== Define the Environment Types for the compatibility attributes
//==================================================================
// Environment types have a name with the potential values associated
// with the name.
//
// Note: Not clear if Environment types are associated with a product
// or just free floating entities within the system.
// list of the support operating systems
Environment: OsType { // 8 values
Values: {Ubuntu,CentOS,Win2000,WinXP,WinVista,Win7,MacOSLeopard,MacOSSnowleopard}
}
// support both 32bit and 64bit operating systems
Environment: OsArchSize { // 2 values
Values: {32bit,64bit}
}
// what is the initial user profile state for the tests
Environment: UserProfile { // 4 values
Values: {clean,dirtysmall,dirtymed,dirtylarge}
}
// what plugins should be installed prior to the start of the tests
Environment: InstalledPlugins { // 6 values
Values: {Standardset,None,Java,QuickTime,Shockwave,Silverlight}
}
//===============================================================
//==== Simple test cases to be performed on the support platforms
//===============================================================
TestCase: startBrowser {}
TestCase: openWebsite {}
TestCase: openTabWithKeyBoard{}
TestCase: closeTab{}
//===============================
//==== Define the Testsuites ====
//===============================
// The SmokeCompatibility suite defines all possible test combinations.
// In total, the Environment types represent a total of 384 platform
// compatibility test cases.
//
// OsType(8) * OsArch(2) * UserProfile(4) * InstallPlugins(6) == 384
//
// The SmokeCompatibility test suite probably would not in practice be used
// in a testrun since we would break the test combinations down by platform
// type in other test suites. Also note that in this representation, the
// astrix '*' equals all values of the Environment type.
TestSuite: SmokeCompatibility { //represents 1536 possible test results
Environment: OsType {
Values: {*}
}
Environment: OsArchSize {
Values: {*}
}
Environment: UserProfile {
Values: {*}
}
Environment: InstalledPlugins {
Values: {*}
}
TestCaseList {
startBrowser
openWebsite
openTabWithKeyBoard
closeTab
}
}
// define compatibility tests for win platforms
TestSuite: SmokeWinSupportedOSes { // represents 24 test case results
Environment: OsType {
Values: {WinXP,WinVista,Win7} // no longer support win2000
}
Environment: OsArchSize { // need to run 32bit and 64bit
Values: {*}
}
Environment: UserProfile {
Values: {dirtymed,dirtylarge}
}
Environment: InstalledPlugins {
Values: {Standardset}
}
TestCaseList {
startBrowser
openWebsite
openTabWithKeyBoard
closeTab
}
}
// define compatibility tests for platforms
TestSuite: SmokeLinuxSupportedOSes { // represents 4 test case results
Environment: OsType {
Values: {Ubuntu,CentOS}
}
Environment: OsArchSize { // only care about 64bit linuxes
Values: {64bit}
}
Environment: UserProfile {
Values: {dirtymed,dirtylarge}
}
Environment: InstalledPlugins {
Values: {Standardset}
}
TestCaseList {
startBrowser
openWebsite
openTabWithKeyBoard
closeTab
}
}
// define compatibility tests for platforms
TestSuite: SmokeMacSupportedOSes { // represents 8 test case results
Environment: OsType {
Values: {Leopard,Snowleopard}
}
Environment: OsArchSize { // need to run 32bit and 64bit
Values: {*}
}
Environment: UserProfile {
Values: {dirtymed,dirtylarge}
}
Environment: InstalledPlugins {
Values: {Standardset}
}
TestCaseList {
startBrowser
openWebsite
openTabWithKeyBoard
closeTab
}
}
//=================================================================
//==== Define Testcycle For Firefox browser compatibility ====
//=================================================================
// The TestCycle BrowserCompatibility represets 36 tests to run using 3 testruns and 3 testers.
TestCycle: BrowserCompatibility {
Product: FirefoxBrowser
TestrunList {
TestRun: WinTests { // 24 test case to run
Testsuite : SmokeWinSupportedOSes
Assigned Tester : Joe Cool
}
TestRun: MacTests { // 8 test case to run
Testsuite : SmokeMacSupportedOSes
Assigned Tester : Joe Shmoe
}
TestRun: LinuxTests { // 4 test cases to run
Testsuite : SmokeLinuxSupportedOSes
Assigned Tester : Joe Jackson
}
}
}