From d9cf65ecc821eb009c64d43001f12d4e3827a766 Mon Sep 17 00:00:00 2001 From: Ed Baak Date: Wed, 3 Aug 2011 13:31:22 +1000 Subject: Updated testcases following coding style guide --- tests/systemtests/sys_bearer/sys_bearer.qtt | 221 ++++++++++++--------- tests/systemtests/sys_contacts/sys_contacts.qtt | 86 +++++--- .../sys_crsysteminfo/sys_crsysteminfo.qtt | 136 +++++++------ .../sys_declarative-music-browser.qtt | 138 +++++++------ 4 files changed, 352 insertions(+), 229 deletions(-) diff --git a/tests/systemtests/sys_bearer/sys_bearer.qtt b/tests/systemtests/sys_bearer/sys_bearer.qtt index 1476011a42..83e755aca9 100644 --- a/tests/systemtests/sys_bearer/sys_bearer.qtt +++ b/tests/systemtests/sys_bearer/sys_bearer.qtt @@ -56,76 +56,111 @@ testcase = { enumeration: function() { - prompt(twiki("---++++ Enumeration of connections - - 1. Work out the list of available networks: - 1. On S60 device, use Menu->Settings->Connectivity settings application. - 1. ifconfig (as superuser on linux/Mac) - 1. ipconfig (on Windows) - 1. Run the bearermonitor example application - 1. Press 'Scan' - 1. Verify all previously listed networks are shown in the application view -")); + // Test meta data + testApplication = "Bearer - Enumeration of Connections"; + testBinary = "bearermonitor"; + testGoal = "Verify the system can detect and display all available networks"; + testPreconditions = "Work out the list of available networks:
+ 1. On S60 device: use Menu->Settings->Connectivity settings application.
+ 1. linux/Mac: ifconfig (as superuser)
+ 1. Windows: ipconfig

"; + testGroups = "BAT"; + + // Test Steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Tested Binary:* " + testBinary + "
+ *Pre-Requisites:* " + testPreconditions + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App starts correctly | + | Press 'Scan' | Verify all available networks are shown in the application view | + ")); }, added_interfaces: function() { - prompt(twiki("---++++ Added network interfaces - - 1. Pre: no network access points are defined on the device; a WLAN is available - 1. Run the bearercloud application - 1. Verify the cloud space is clear of networks - 1. Press the Menu key to background the application - 1. Open Settings -> Connectivity -> Wireless networks - 1. Select the WLAN from the list - 1. Press Connect - 1. Press the Menu key - 1. Select the bearercloud application to foreground it - 1. Verify the new network is displayed in the circle -")); + // Test meta data + testApplication = "Bearer - Added network interfaces"; + testBinary = "bearermonitor"; + testGoal = "Verify that network interfaces can be added"; + testPreconditions = "No network access points are defined on the device; a WLAN is available"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | Verify the cloud space is clear of networks | + | Press the Menu key to background the application | | + | Open Settings -> Connectivity -> Wireless networks | | + | Select the WLAN from the list | | + | Press Connect | | + | Press the Menu key | | + | Select the bearercloud application to foreground it | Verify the new network is displayed in the circle | + ")); }, removed_interfaces: function() { - prompt(twiki("---++++ Removed network interfaces - - 1. Pre: Added network interfaces has been executed successfully - 1. Run the bearercloud application - 1. Verify the cloud space shows a network in the green circle - 1. Press the Menu key to background the application - 1. Open Settings -> Connectivity -> Destinations -> Uncategorised - 1. Select the WLAN from the list - 1. Press Options -> Delete, and then Yes in the confirm dialog - 1. Press the Menu key - 1. Select the bearercloud application to foreground it - 1. Verify the new network is not displayed in the circle -")); + // Test meta data + testApplication = "Bearer - Removed network interfaces"; + testBinary = "bearercloud"; + testGoal = "Verify that removal of a network connection is detected correctly"; + testPreconditions = "A connection to a WLAN exists"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | Verify the cloud space shows a network in the green circle | + | Press the Menu key to background the application | | + | Open Settings -> Connectivity -> Destinations -> Uncategorised | | + | Select the WLAN from the list | | + | Press Options -> Delete, and then Yes in the confirm dialog | | + | Press the Menu key | | + | Select the bearercloud application to foreground it | Verify the new network is not displayed in the circle | + ")); }, change_status: function() { - prompt(twiki("---++++ Changing the status of a network - - 1. Pre: no network access points are defined on the device; a WLAN is available - 1. Run the bearercloud application - 1. Verify the cloud space is clear of networks - 1. Press the Menu key to background the application - 1. Open Settings -> Connectivity -> Wireless networks - 1. Select the WLAN from the list - 1. Press Connect - 1. Press the Menu key - 1. Select the bearercloud application to foreground it - 1. Verify the new network is displayed in the green circle (connected) - 1. Press the Menu key to background the application - 1. Open Settings -> Connectivity -> Connection Mgr - 1. Select the WLAN from the list - 1. Press Options -> Disconnect - 1. Press the Menu key - 1. Select the bearercloud application to foreground it - 1. Verify the new network is now displayed in the blue circle (disconnected) - 1. Disable the network device (eg. unplug the access point) - 1. Verify that bearercloud shows the network moves to the grey circle (unavailable) -")); + // Test meta data + testApplication = "Bearer - Changing the status of a network"; + testBinary = "bearercloud"; + testGoal = "Verify that network status changes are detected correctly."; + testPreconditions = "no network access points are defined on the device; a WLAN is available"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | Verify the cloud space is clear of networks | + | Press the Menu key to background the application | | + | Open Settings -> Connectivity -> Wireless networks | | + | Select the WLAN from the list | | + | Press Connect | | + | Press the Menu key | | + | Select the bearercloud application to foreground it | Verify the new network is displayed in the green circle (connected) | + | Press the Menu key to background the application | | + | Open Settings -> Connectivity -> Connection Mgr | | + | Select the WLAN from the list | | + | Press Options -> Disconnect | | + | Press the Menu key | | + | Select the bearercloud application to foreground it | Verify the new network is now displayed in the blue circle (disconnected) | + | Disable the network device (eg. unplug the access point) | Verify that bearercloud shows the network moves to the grey circle (unavailable) | + ")); }, interface_priority: function() @@ -133,38 +168,44 @@ testcase = { if (testcase.platform != "symbian" && testcase.platform != "maemo") { skip("This test only applies to Symbian platform"); } - prompt(twiki('---++++ Interfaces are used in order of priority - - 1. Pre: GPRS is available to the device - 1. Pre: WLAN is available to the device - - 1. Press the Menu key - 1. Select Settings->Connectivity->Destinations - 1. Select Option->New Destination, enter a name - 1. Select a picture - 1. Select the destination - 1. Select Option->New access point - 1. Select Yes - 1. Verify that the WLAN "x networks avail." is greater than 0 - 1. Select Wireless LAN - 1. Select the test WLAN (and enter a key if necessary) - 1. Select Option->New access point - 1. Select Yes - 1. Select Packet data - 1. Enter a name and commit - 1. Press Back - 1. Select Options->Default connection - 1. Select the new Destination - 1. Verify the Destination has a check mark - 1. Start the bearermonitor example application - 1. In the list, select the new Destination - 1. Verify "Roaming" is shown as "Available" - 1. Move the device into an area not covered by the WLAN or simulate an uncovered environment - 1. Verify the application indicates loss of WLAN network (may take 1 - 2 minutes) - 1. Verify the application indicates a change of bearer to the GPRS network - may take 1 - 2 minutes - 1. Move the device into or simulate the area covered by both networks - 1. Verify the device connects to the network using the WLAN bearer - ')); + + // Test meta data + testApplication = "Bearer - Interfaces are used in order of priority"; + testBinary = ""; + testGoal = "Verify that network interfaces are used in order of priority"; + testPreconditions = " 1. GPRS is available to the device
+ 1. WLAN is available to the device"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Tested Binary:* " + testBinary + "
+ *Pre-Requisites:* " + testPreconditions + "
+ + | *Step* | *Verification* | + | Press the Menu key | | + | Select Settings->Connectivity->Destinations | | + | Select Option->New Destination, enter a name | | + | Select a picture | | + | Select the destination | | + | Select Option->New access point | | + | Select Yes | Verify that the WLAN 'x networks avail' is greater than 0 | + | Select Wireless LAN | | + | Select the test WLAN (and enter a key if necessary) | | + | Select Option->New access point | | + | Select Yes | | + | Select Packet data | | + | Enter a name and commit | | + | Press Back | | + | Select Options->Default connection | | + | Select the new Destination | Verify the Destination has a check mark | + | Start the bearermonitor example application | | + | In the list, select the new Destination | Verify 'Roaming' is shown as 'Available' | + | Move the device into an area not covered by the WLAN or simulate an uncovered environment | Verify the application indicates loss of WLAN network (may take 1 - 2 minutes) | + | Wait a bit longer (1 - 2 minutes) | Verify the application indicates a change of bearer to the GPRS network | + | Move the device into or simulate the area covered by both networks | Verify the device connects to the network using the WLAN bearer | + ")); } } diff --git a/tests/systemtests/sys_contacts/sys_contacts.qtt b/tests/systemtests/sys_contacts/sys_contacts.qtt index 34f7a3b8a6..0629dc2a52 100644 --- a/tests/systemtests/sys_contacts/sys_contacts.qtt +++ b/tests/systemtests/sys_contacts/sys_contacts.qtt @@ -41,11 +41,6 @@ //TESTED_COMPONENT=src/contacts -function startTestApp() -{ - startApplication("samplephonebook"); -} - function selectContactList() { if (!runAsManualTest()){ @@ -122,7 +117,7 @@ function contactsMenuItem(menuText) // otherwise find the oldName then edit contact details function updateContact(name, phone, email, address, avatar, oldName) { if ((oldName == undefined) || (oldName == "")){ - select("Add"); + select("Add"); }else{ if (!runAsManualTest()){ var contactList = findWidget( { className: "QListWidget" } ); @@ -230,7 +225,7 @@ function checkContactDetails(name, phone, email, address, avatar){ } -// not ideal, there is need to programaticly check that +// not ideal, there is need to programaticly check that // the contact details dialog is not longer showing, ie no "Save" button function waitForSave(){ for (var loop=0; loop < 5; loop++){ @@ -239,7 +234,7 @@ function waitForSave(){ else break; } - + // should not happen verify(!getLabels().contains("&Save")); } @@ -250,7 +245,7 @@ testcase = { initTestCase: function() { /* - startTestApp(); + startApplication("samplephonebook"); if (!runAsManualTest()){ var contactList = findWidget( { className: "QListWidget" } ); @@ -267,7 +262,7 @@ testcase = { if (!runAsManualTest()){ /* TODO delete contact added by test cases // make use we remove all contacts that has been added - startTestApp(); + startApplication("samplephonebook"); var contactWidget = findWidget( { className: "QListWidget" } ); var contactList = getValue(contactWidget); @@ -290,10 +285,18 @@ testcase = { ] ] }, - /* Requirement: Add some contacts */ addContact: function(contactSet) { - startTestApp(); + // Test meta data + testApplication = "Contacts - Add Contact"; + testBinary = "samplephonebook"; + testGoal = "Verify that contacts can be added"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + startApplication(testBinary); + for (var index = 0; index < contactSet.length; index++){ var contact = contactSet[index]; // create new contact @@ -310,11 +313,18 @@ testcase = { ] ] }, - /* Requirement: Verify the contact details and confirm that it can be updated */ - /* verify added contact details and update contact name */ updateContactDetails : function(contactSet) { - startTestApp(); + // Test meta data + testApplication = "Contacts - Update Contact Details"; + testBinary = "samplephonebook"; + testGoal = "Verify that contact details can be updated"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + startApplication(testBinary); + for (var index = 0; index < contactSet.length; index++){ var contact = contactSet[index]; var newname = contact.name + '9'; @@ -339,10 +349,17 @@ testcase = { Names: ["NameA", "NameB"] }, - /* Requirement : Verify the correct match of contacts against a simple filter */ - /* Test the "Apply &Filter" function */ filterCheck : function(name, exists, message) { - startTestApp(); + // Test meta data + testApplication = "Contacts - Apply Filter"; + testBinary = "samplephonebook"; + testGoal = "Verify the correct match of contacts against a simple filter"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + startApplication(testBinary); + // add some contacts for this tests use var extraNames = testcase.filterCheck_extraData['Names']; updateContact(extraNames[0]); @@ -360,9 +377,17 @@ testcase = { Names: ["NameC", "NameD"] }, - /* Test the "Clear Filter" function */ clearFilterCheck : function(nameFilter){ - startTestApp(); + // Test meta data + testApplication = "Contacts - Clear Filter"; + testBinary = "samplephonebook"; + testGoal = "Verify that when the filter is cleared all contacts are visible"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + startApplication(testBinary); + // add some contacts for this tests use var extraNames = testcase.clearFilterCheck_extraData['Names']; updateContact(extraNames[0]); @@ -382,13 +407,22 @@ testcase = { Name1 : ["NameE", "NameG", "NameH"] }, - /* Requirement: Verify that a contact can be deleted */ deleteContact : function(name1, name2, name3){ - startTestApp(); + // Test meta data + testApplication = "Contacts - Delete Contact"; + testBinary = "samplephonebook"; + testGoal = "Verify that a contact can be deleted"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + startApplication(testBinary); + // add some contacts for this tests use updateContact(name1); updateContact(name2); updateContact(name3); + // delete contacts in different order to creation deleteContact(name2); deleteContact(name1); @@ -400,7 +434,13 @@ testcase = { checkContactExists(name2, false); checkContactExists(name3, false); }else{ - prompt("Verify that Contacts have been deleted:" + name1 + ", " + name2 + ", " + name3); + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | | Verify that Contacts have been deleted:" + name1 + ", " + name2 + ", " + name3 + "|" )); } } diff --git a/tests/systemtests/sys_crsysteminfo/sys_crsysteminfo.qtt b/tests/systemtests/sys_crsysteminfo/sys_crsysteminfo.qtt index dda65a297d..a55954fa7e 100644 --- a/tests/systemtests/sys_crsysteminfo/sys_crsysteminfo.qtt +++ b/tests/systemtests/sys_crsysteminfo/sys_crsysteminfo.qtt @@ -45,77 +45,99 @@ testcase = { Configurable_Signal_Strength: function() { - skip('Configurable Signal Strength not implemented yet', SkipAll); + // Test meta data + testApplication = "System Info - Configurable Signal Strength"; + testBinary = ""; + testGoal = "Verify that "; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + skip('Configurable Signal Strength not implemented yet', SkipAll); }, Storage_changed_notification: function() { - prompt(twiki('*Storage changed notification* + // Test meta data + testApplication = "System Info - Storage Changed Notification"; + testBinary = "examples/qsysinfo"; + testGoal = "Verify that the system detects changes to storage media correctly and sends notifications"; + testPreconditions = " 1. target supports removable storage, if not then pass this test
+ 1. Ensure that target system does not have any removable storage inserted/mounted
+ *Note:* On S60 platforms removing a media might cause qsysinfo to be closed, which is usual"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Tested Binary:* " + testBinary + "
+ *Pre-Requisites:* " + testPreconditions + "
- 1 Verify that target supports removable storage, if not then pass this test now otherwise continue with the next steps - 1 Ensure that target system does not have any removable storage inserted/mounted - 1 Start application *examples/qsysinfo* - 1 Switch to the *Storage* tab - 1 Verify that the removable storage status is unavailable - 1 Insert/mount the storage - 1 Verify that the storage appears with correct size - 1 Remove/unmount the removable media - 1 Verify that the storage disappears or marked unavailable - 1 *Note:* On S60 platforms removing a media might cause qsysinfo to be closed, which is usual - ')); + | *Step* | *Verification* | + | Start " + testBinary + " | App starts correctly | + | Switch to the *Storage* tab | Verify that the removable storage status is unavailable | + | Insert/mount the storage | Verify that the storage appears with correct size | + | Remove/unmount the removable media | Verify that the storage disappears or marked unavailable | + ")); }, Query_OS_Qt_firmware_versions: function() { - prompt(twiki('*Query OS, Qt and firmware versions* + // Test meta data + testApplication = "System Info - OS Qt Firmware Version"; + testBinary = "BlueWheel/SystemInfo"; + testGoal = "Verify that OS, Qt and Firmware versions numbers can be read"; + testPreconditions = "None"; + testGroups = "BAT"; - 1 Start the bluewheel application and open *SystemInfo* - 1 Open *General/Features* - 1 From the *Version* pulldown menu select *Os* - 1 Verify the Os version is what is expected for the platform - 1 From the *Version* pulldown menu select *QtCore* - 1 Verify the Qt version is what is expected - 1 From the *Version* pulldown menu select *Firmware* - 1 Verify the Firmware version is what is expected for the platform - 1 From the *Version* pulldown menu select *QtMobility* - 1 Verify the QtMobility version is what is expected - ')); + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App starts correctly | + | Open *General/Features* | Features page is shown | + | From the *Version* pulldown menu select *Os* | Verify the Os version is what is expected for the platform | + | From the *Version* pulldown menu select *QtCore* | Verify the Qt version is what is expected | + | From the *Version* pulldown menu select *Firmware* | Verify the Firmware version is what is expected for the platform | + | From the *Version* pulldown menu select *QtMobility* | Verify the QtMobility version is what is expected | + ")); }, Query_device_hardware_features: function() { - prompt(twiki('*Query device hardware features* + // Test meta data + testApplication = "System Info - Device Hardware Features"; + testBinary = "BlueWheel/SystemInfo"; + testGoal = "Verify that device hardware status can be read"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
- 1 Start the bluewheel application and open *SystemInfo* - 1 Open *General/Features* - 1 From the *Feature* pulldown menu select *Bluetooth* - 1 Verify the Bluetooth status is what is expected for the platform - 1 From the *Feature* pulldown menu select *Camera* - 1 Verify the camera status is what is expected for the platform - 1 From the *Feature* pulldown menu select *Fmradio* - 1 Verify the Fmradio status is what is expected for the platform - 1 From the *Feature* pulldown menu select *Ir* - 1 Verify the Ir status is what is expected for the platform - 1 From the *Feature* pulldown menu select *Led* - 1 Verify the Led status is what is expected for the platform - 1 From the *Feature* pulldown menu select *Memcard* - 1 Verify the Memcard status is what is expected for the platform - 1 From the *Feature* pulldown menu select *Usb* - 1 Verify the Usb status is what is expected for the platform - 1 From the *Feature* pulldown menu select *Vib* - 1 Verify the Vib status is what is expected for the platform - 1 From the *Feature* pulldown menu select *Wlan* - 1 Verify the Wlan status is what is expected for the platform - 1 From the *Feature* pulldown menu select *Sim* - 1 Verify the Sim status is what is expected for the platform - 1 From the *Feature* pulldown menu select *Location* - 1 Verify the Location status is what is expected for the platform - 1 From the *Feature* pulldown menu select *VideoOut* - 1 Verify the VideoOut status is what is expected for the platform - 1 From the *Feature* pulldown menu select *Haptics* - 1 Verify the Haptics status is what is expected for the platform - 1 From the *Feature* pulldown menu select *FmTransmitter* - 1 Verify the FmTransmitter status is what is expected for the platform - ')); + | *Step* | *Verification* | + | Launch " + testBinary + " | App starts correctly | + | Open *General/Features* | Features page is shown | + | From the *Feature* pulldown menu select *Bluetooth* | Verify the Bluetooth status is what is expected for the platform | + | From the *Feature* pulldown menu select *Camera* | Verify the camera status is what is expected for the platform | + | From the *Feature* pulldown menu select *Fmradio* | Verify the Fmradio status is what is expected for the platform | + | From the *Feature* pulldown menu select *Ir* | Verify the Ir status is what is expected for the platform | + | From the *Feature* pulldown menu select *Led* | Verify the Led status is what is expected for the platform | + | From the *Feature* pulldown menu select *Memcard* | Verify the Memcard status is what is expected for the platform | + | From the *Feature* pulldown menu select *Usb* | Verify the Usb status is what is expected for the platform | + | From the *Feature* pulldown menu select *Vib* | Verify the Vib status is what is expected for the platform | + | From the *Feature* pulldown menu select *Wlan* | Verify the Wlan status is what is expected for the platform | + | From the *Feature* pulldown menu select *Sim* | Verify the Sim status is what is expected for the platform | + | From the *Feature* pulldown menu select *Location* | Verify the Location status is what is expected for the platform | + | From the *Feature* pulldown menu select *VideoOut* | Verify the VideoOut status is what is expected for the platform | + | From the *Feature* pulldown menu select *Haptics* | Verify the Haptics status is what is expected for the platform | + | From the *Feature* pulldown menu select *FmTransmitter* | Verify the FmTransmitter status is what is expected for the platform | + ")); } } diff --git a/tests/systemtests/sys_declarative-music-browser/sys_declarative-music-browser.qtt b/tests/systemtests/sys_declarative-music-browser/sys_declarative-music-browser.qtt index e0e027adcc..7b6feec1c0 100644 --- a/tests/systemtests/sys_declarative-music-browser/sys_declarative-music-browser.qtt +++ b/tests/systemtests/sys_declarative-music-browser/sys_declarative-music-browser.qtt @@ -41,84 +41,104 @@ //TESTED_COMPONENT=src/gallery -function startTestApp() -{ - prompt('Start application \'declarative-music-browser\' - Verify test application started and closed without issue'); -} - - testcase = { - // prove that the test application starts before anything else is tested. - Run_Test_Application: function() - { - startTestApp(); - if (!runAsManualTest()){ - // ensure we have a widget to work with, dump its details - // TODO when run this test case 'automaticly' then enable this following code - //print('Focus widget is' + focusWidget()); - } - }, - List_Albums: function() { - prompt(twiki('*List Albums* - - 1 Start application *declarative-music-browser* - 1 Click Albums icon - 1 Verify that the albums listed match what is seen via the native music/document browser - 1 Verify that albums have the expected cover thumbnail above the album title - 1 Click on an album in view that is known to have more that once song in it - 1 Verify that the expected songs are listed in view - 1 Click *Back* button - 1 Click *Back* button to return to top \"menu\" - ')); + // Test meta data + testApplication = "Music - List Albums"; + testBinary = "declarative-music-browser"; + testGoal = "Verify that all available music albums can be shown and selected"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Click Albums icon | Verify that the albums listed match what is seen via the native music/document browser | + | | Verify that albums have the expected cover thumbnail above the album title | + | Click on an album in view that is known to have more that once song in it | Verify that the expected songs are listed in view | + | Click *Back* button | | + | Click *Back* button to return to top 'menu' | | + ")); }, List_Artists : function() { - prompt(twiki('*List Artists* - - 1 Start application *declarative-music-browser* - 1 Click Artists icon - 1 Verify that the artists listed match what is seen via the native music/document browser - 1 Click on an artist in view - 1 Verify that the artist name is listed correctly at top of view - 1 Verify that expected songs are listed in view - 1 Click *Back* button - 1 Click *Back* button to return to top \"menu\" - ')); + testApplication = "Music - List Artists"; + testBinary = "declarative-music-browser"; + testGoal = "Verify that all available artists can be shown and selected"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Click Artists icon | Verify that the artists listed match what is seen via the native music/document browser | + | Click on an artist in view | Verify that the artist name is listed correctly at top of view | + | | Verify that expected songs are listed in view | + | Click *Back* button | | + | Click *Back* button to return to top 'menu' | | + ")); }, List_Genres : function() { - prompt(twiki('*List Genres* - - 1 Start application *declarative-music-browser* - 1 Click Genres icon - 1 Verify that the genres listed match what is seen via the native music/document browser - 1 Click on an genre in view - 1 Verify that albums matching the genres are listed - 1 Verify that the expected songs are listed in view - 1 Click *Back* button - 1 Click *Back* button to return to top \"menu\" - ')); + testApplication = "Music - List Genres"; + testBinary = "declarative-music-browser"; + testGoal = "Verify that available genres are shown correctly"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Click Genres icon | Verify that the genres listed match what is seen via the native music/document browser | + | Click on an genre in view | Verify that albums matching the genres are listed | + | | Verify that the expected songs are listed in view | + | Click *Back* button | | + | Click *Back* button to return to top 'menu' | | + ")); }, List_Songs : function() { - prompt(twiki('*List Songs* - - 1 Start application *declarative-music-browser* - 1 Click Songs icon - 1 Verify that the song listed match what is seen via the native music/document browser - 1 Verify that two of the listed songs have the correct song length mentioned on right - 1 Click *Back* button to return to top \"menu\" - ')); + testApplication = "Music - List Songs"; + testBinary = "declarative-music-browser"; + testGoal = "Verify that available songs are listed correctly"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Click Songs icon | Verify that the song listed match what is seen via the native music/document browser | + | | Verify that two of the listed songs have the correct song length mentioned on right | + | Click *Back* button to return to top menu' | | + ")); } } -- cgit v1.2.3 From b6efd04a371b40a99128f43ce04028facb78ea54 Mon Sep 17 00:00:00 2001 From: Ed Baak Date: Wed, 3 Aug 2011 14:51:28 +1000 Subject: Update sfw-notes tests According to systemtest coding-style-guide --- .../sys_declarative-sfw-notes.qtt | 154 +++++++++++++-------- 1 file changed, 94 insertions(+), 60 deletions(-) diff --git a/tests/systemtests/sys_declarative-sfw-notes/sys_declarative-sfw-notes.qtt b/tests/systemtests/sys_declarative-sfw-notes/sys_declarative-sfw-notes.qtt index ffaa4d9b02..a27b463bc5 100644 --- a/tests/systemtests/sys_declarative-sfw-notes/sys_declarative-sfw-notes.qtt +++ b/tests/systemtests/sys_declarative-sfw-notes/sys_declarative-sfw-notes.qtt @@ -41,86 +41,120 @@ //TESTED_COMPONENT=src/serviceframework -function startTestApp() -{ - prompt('Start application \'declarative-sfw-notes\' - Verify test application started and closed without issue'); -} - - testcase = { - // prove that the test application starts before anything else is tested. - Run_Test_Application: function() - { - startTestApp(); - if (!runAsManualTest()){ - // ensure we have a widget to work with, dump its details - // TODO when run this test case 'automaticly' then enable this following code - //print('Focus widget is' + focusWidget()); - } - }, - Add_Note_With_Date: function() { - prompt(twiki('*Add Note with date* - - 1 If not done so register the notes manager service: eg run *servicefw add xmldata/notesmanagerservice.xml* - 1 Start application *declarative-sfw-notes* - 1 Click \"+\" button - 1 Enter a note in the form *Note1#2010-10-01#10:30* - 1 Click *Ok* button - 1 Verify that note entered is listed with date mentioned - ')); + // Test meta data + testApplication = "SFW - Add Note With Date"; + testBinary = "declarative-sfw-notes"; + testGoal = "Verify that "; + testPreconditions = "notes manager service must be registered: eg run *servicefw add xmldata/notesmanagerservice.xml*"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Click '+' button | | + | Enter a note in the form *Note1#2010-10-01#10:30* | | + | Click *Ok* button | Verify that note entered is listed with date mentioned | + ")); }, Add_Note_Without_Date: function() { - prompt(twiki('*Add Note without date* - - 1 If not done so register the notes manager service: eg run *servicefw add xmldata/notesmanagerservice.xml* - 1 Start application *declarative-sfw-notes* - 1 Click \"+\" button - 1 Enter a note in the form *My Note* - 1 Click *Ok* button - 1 Verify that note entered has the current date - ')); + // Test meta data + testApplication = "SFW - Add Note Without Date"; + testBinary = "declarative-sfw-notes"; + testGoal = "Verify that a note entered without a date gets the current date appended to it"; + testPreconditions = "notes manager service must be registered: eg run *servicefw add xmldata/notesmanagerservice.xml*"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Click '+' button | | + | Enter a note in the form *My Note* | | + | Click *Ok* button | Verify that note entered has the current date | + ")); }, Browse_Notes: function() { - prompt(twiki('*Browse Notes* - - 1 If not done so register the notes manager service: eg run *servicefw add xmldata/notesmanagerservice.xml* - 1 Start application *declarative-sfw-notes* - 1 If not done so enter at least three notes see in this System Test the functions *Add_Note_With_Date* and *Add_Note_Without_Date* - 1 Verify that *right* arrow button on dialog can be used to navigate to last note - 1 Verify that the *left* arrow button on dialog can be used to navigate to first note - ')); + // Test meta data + testApplication = "SFW - Browse Notes"; + testBinary = "declarative-sfw-notes"; + testGoal = "Verify that the user can browse through all notes in the system."; + testPreconditions = "notes manager service must be registered: eg run *servicefw add xmldata/notesmanagerservice.xml*"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Ensure at least three notes exist in the system | Verify that *right* arrow button on dialog can be used to navigate to last note | + | | Verify that the *left* arrow button on dialog can be used to navigate to first note | + ")); }, Find_Note: function() { - prompt(twiki('*Find Note* - - 1 If not done so register the notes manager service: eg run *servicefw add xmldata/notesmanagerservice.xml* - 1 Start application *declarative-sfw-notes* - 1 Click *Search* button ( looking glass ) - 1 Enter text from previously entered note, eg *My Note* - 1 Click *OK* button - 1 Verify that expected note is displayed - ')); + // Test meta data + testApplication = "SFW - Find Note"; + testBinary = "declarative-sfw-notes"; + testGoal = "Verify that notes can be found using the search function."; + testPreconditions = "1. notes manager service must be registered: eg run *servicefw add xmldata/notesmanagerservice.xml*
+ 1. at least three notes have been entered in the system."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Click *Search* button ( looking glass ) | | + | Enter text from previously entered note, eg *My Note* | | + | Click *OK* button | Verify that expected note is displayed | + ")); }, Delete_Note: function() { - prompt(twiki('*Delete Note* - - 1 If not done so register the notes manager service: eg run *servicefw add xmldata/notesmanagerservice.xml* - 1 Start application *declarative-sfw-notes* - 1 Click the *Delete* button ( in between Add and Search buttons ) - 1 Verify that the current note was deleted, ie use left and right arrow buttons to browse notes. - ')); + // Test meta data + testApplication = "SFW - Delete Note"; + testBinary = "declarative-sfw-notes"; + testGoal = "Verify that notes can be deleted."; + testPreconditions = "1. notes manager service must be registered: eg run *servicefw add xmldata/notesmanagerservice.xml*
+ 1. at least three notes have been entered in the system."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Click the *Delete* button ( in between Add and Search buttons ) | Verify that the current note was deleted, ie use left and right arrow buttons to browse notes. | + ")); }, } -- cgit v1.2.3 From b3b1d024f61cd265231f35d64856c7ce58e0257d Mon Sep 17 00:00:00 2001 From: Ed Baak Date: Wed, 3 Aug 2011 15:40:19 +1000 Subject: Update haptics feedback testcase According to coding style guide --- tests/systemtests/sys_feedback/sys_feedback.qtt | 166 +++++++++++++----------- 1 file changed, 89 insertions(+), 77 deletions(-) diff --git a/tests/systemtests/sys_feedback/sys_feedback.qtt b/tests/systemtests/sys_feedback/sys_feedback.qtt index c07fd6b86e..127555788d 100644 --- a/tests/systemtests/sys_feedback/sys_feedback.qtt +++ b/tests/systemtests/sys_feedback/sys_feedback.qtt @@ -41,106 +41,118 @@ //TESTED_COMPONENT=src/feedback -function startHapticsPlayerTestApp() -{ - prompt('Start application \'hapticsplayer\''); -} - -function startHapticsSquareTestApp() -{ - prompt('Start application \'hapticsquare\''); -} - - testcase = { - runTestApplication: function() - { - startHapticsPlayerTestApp(); - if (!runAsManualTest()){ - // ensure we have a widget to work with, dump its details - // TODO when run this test case 'automaticly' then enable this following code - //print('Focus widget is' + focusWidget()); - }else{ - prompt('Verify test application started and closed without issue'); - } - - startHapticsSquareTestApp(); - if (!runAsManualTest()){ - // ensure we have a widget to work with, dump its details - // TODO when run this test case 'automaticly' then enable this following code - //print('Focus widget is' + focusWidget()); - }else{ - prompt('Verify test application started and closed without issue'); - } - }, - - vibrate_using_lowlevel_API_data : { - vibrateSet : [ - [ - {duration:2000, intensity:1, comment:'intense vibration, for two seconds'}, - {duration:4000, intensity:1, comment:'intense vibration for four seconds'}, - {duration:2000, intensity:0.5, comment:'half strength vibration, for two seconds'}, - {duration:2000, intensity:0.1, comment:'very low vibration, for two seconds'}, - {duration:2000, intensity:0.0 ,comment:'no vibration, for two seconds'}, - ] - ] + intense_two_seconds : [2000, 1, 'intense vibration, for two seconds'], + intense_four_seconds : [4000, 1, 'intense vibration for four seconds'], + half_two_seconds : [2000, 0.5, 'half strength vibration, for two seconds'], + low_two_seconds : [2000, 0.1, 'very low vibration, for two seconds'], + no_two_seconds : [2000, 0.0 ,'no vibration, for two seconds'] }, - vibrate_using_lowlevel_API: function(vibrateSet) + vibrate_using_lowlevel_API: function(duration, intensity, comment) { - startHapticsPlayerTestApp(); - for (var index = 0; index < vibrateSet.length; index++){ - enter(vibrateSet[index].duration, 'duration'); - enter(vibrateSet[index].intensity, 'intensity'); - select('Play'); - prompt('Verify that sound matches:' + vibrateSet[index].comment); - } + // Test meta data + testApplication = "Feedback - Vibrate Using Low Level API"; + testBinary = "hapticsplayer"; + testGoal = "Verify that vibrate functionality can be called with low level API"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps +// enter(duration, 'duration'); +// enter(intensity, 'intensity'); + + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Enter *" + duration + "* into duration field | | + | Enter *" + intensity + "* into intensity field | | + | Select *Play* | Verify that sound matches: '*" + comment + "*' | + ")); }, vibrate_using_highlevel_API: function() { - startHapticsPlayerTestApp(); - prompt('If \'high-level\' tab is disabled skip this test'); - select('high-level', tabBar()); - prompt('For each value of combobox'); - prompt('* Click the \'Play\' button'); - prompt('* Verify that the expected effect is heard'); + // Test meta data + testApplication = "Feedback - Vibrate Using High Level API"; + testBinary = "hapticsplayer"; + testGoal = "Verify that vibrate functionality can be called with high level API."; + testPreconditions = "'High-Level' tab must be enabled"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select high-level tab | | + | For each value of combobox, Click the 'Play' button | Verify that the expected effect is heard | + ")); }, vibrate_using_file_API: function() { - startHapticsPlayerTestApp(); - prompt('If \'file\' tab is disabled or no platform specific effect file is aviable skip this test'); - select('file', tabBar()); - select('...'); - prompt('Enter locations to effect file'); - select ('Open'); - select('Play/pause'); - prompt('Verify that the expected effect is heard'); - select('Play/pause'); - select('Stop'); - prompt('Verify that the expected effect is stoped before it is completed'); + // Test meta data + testApplication = "Feedback - Play File"; + testBinary = "hapticsplayer"; + testGoal = "Verify that feedback mechanism works using a specified files."; + testPreconditions = "1. 'File' tab must be enabled.
+ 1. Platform specific effect file must be available."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | select 'File' | | + | select '...' | | + | enter location to effect file and select *Open* | | + | select 'Play/pause' | Verify that the expected effect is heard | + | select 'Play/pause' again and quickly select 'Stop' | Verify that the expected effect is stoped before it is completed | + ")); }, simple_vibrate_test_data: { - effectNames : [ - ['Rumble', 'Ocean', 'Click', 'Oops'] - ] + rumble : ['Rumble'], + ocean: ['Ocean'], + click : ['Click'], + oops : ['Oops'] }, - simple_vibrate_test: function(effectNames) + simple_vibrate_test: function(effect) { - startHapticsSquareTestApp(); - prompt('If device does not have a touch screen/mouse skip this test'); - for (var index=0; index < effectNames.length; index++){ - select(effectNames[index]); - prompt('Verify effects sounds like:' + effectNames[index]); - } + // Test meta data + testApplication = "Feedback - Effects"; + testBinary = "hapticsquare"; + testGoal = "Verify that feedback mechanism works with selected effects."; + testPreconditions = "tested device must have a touch screen/mouse"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | select '" + effect + "' | Verify effects sounds like: " + effect + "|")); } } // end of testcase -- cgit v1.2.3 From 798f1a94cd2b96eb5f68936e83f12b623dd704f8 Mon Sep 17 00:00:00 2001 From: Ed Baak Date: Thu, 4 Aug 2011 13:44:50 +1000 Subject: Updated location tests According to system test style guide --- tests/systemtests/sys_location/sys_location.qtt | 748 ++++++++++++++++-------- 1 file changed, 513 insertions(+), 235 deletions(-) diff --git a/tests/systemtests/sys_location/sys_location.qtt b/tests/systemtests/sys_location/sys_location.qtt index 5c622e45d0..f698926dc0 100644 --- a/tests/systemtests/sys_location/sys_location.qtt +++ b/tests/systemtests/sys_location/sys_location.qtt @@ -45,62 +45,107 @@ testcase = { current_position: function() { - prompt(twiki('---+++ Position is detected - | *Step* | *Verification* | - | Run the weatherinfo_with_location example | Verify that weather information for your local area is displayed |' + // Test meta data + testApplication = "Location - Current Position"; + testBinary = "weatherinfo_with_location"; + testGoal = "Verify that current position is detected and displayed."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | Verify that weather information for your local area is displayed |" )); }, location_is_updated: function() { - prompt(twiki('---+++ Position changes are detected - Note that GPS and internet connection is required for this test case. - | *Step* | *Verification* | - | Run the lightmaps_with_location app (sources are in demos\lightmaps). | Verify that map is displayed and centered with the current position | - | Move to a different location | Verify that map is updated and centered with new location |' + // Test meta data + testApplication = "Location - Location Updates"; + testBinary = "lightmaps_with_location (sources are in demos\lightmaps)"; + testGoal = "Verify that location data is received and map is updated and centered after changing location."; + testPreconditions = "GPS and internet connection is required for this test case"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally. Verify that map is displayed and centered with the current position. | + | Move to a different location | Verify that map is updated and centered with new location |" )); }, third_party_position_source: function() { - //test case for QTMOBILITY-873: Allow 3rd party position sources - prompt(twiki('---+++ Position is detected via cusom plugin - Note that GPS and internet connection is required for this test case - | *Step* | *Verification* | - | Run the testQtLocation application (this is part of BlueWeel project, sources are in git@scm.dev.nokia.troll.no:qtmobility/qtmobility-tests.git | | - | Select the Custom Service | Verify that no "Unable to register location service" and "Not valid interface." messages appear | - | Press the Update Map button | Verify that map was loaded and correct current position is displayed |' + // Test meta data + testApplication = "Location - Position Detection via Custom Plugin"; + testBinary = "testQtLocation"; // this is part of BlueWeel project, sources are in git@scm.dev.nokia.troll.no:qtmobility/qtmobility-tests.git + testGoal = "Verify that positions can be detected using third party plugins"; + testPreconditions = "GPS and internet connection is required for this test case"; + testGroups = "BAT"; + testRequirements = "QTMOBILITY-873: Allow 3rd party position sources"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select the Custom Service | Verify that no 'Unable to register location service' and 'Not valid interface.' messages appear | + | Press the Update Map button | Verify that map was loaded and correct current position is displayed |" )); }, shift_to_the_given_offset: function() { - //test case for QTMOBILITY-658: Add a method to QGeoCoordinate which takes an offset and returns another QGeoCoordinate - prompt(twiki('---+++ New coordinats are calculated - Note that significand precision should be taken into account during comparing real numbers, that is why we consider 5.48417e-16 value equal to zero - | *Step* | *Verification* | - | Run the testQtLocation application | | - | Select the MapNavigation | | - | Fill in "0" in to Start Latitude field | | - | Fill in "100" in to Start Longitude field | | - | Select Distance/Bearing from *Pre-defined* dropdown list | | - | Fill "1000000, 90" in to the given field | | - | Press the Ok button | Verify that Destination fields are updated with 5.48417e-16 latitude and 108.9932 longitude | - | Fill in "60" in to Start Latitude field | | - | Fill in "100" in to Start Longitude field | | - | Select Distance/Bearing from *Pre-defined* dropdown list | | - | Fill "1000000, 180" in to the given field | | - | Press the Ok button | Verify that Destination fields are updated with 51.0068 latitude and 100 longitude | - | Fill in "60" in to Start Latitude field | | - | Fill in "100" in to Start Longitude field | | - | Select Distance/Bearing from *Pre-defined* dropdown list | | - | Fill "1000000, 20" in to the given field | | - | Press the Ok button | Verify that Destination fields are updated with 68.2523 latitude and 108.296 longitude |' + // Test meta data + testApplication = "Location - Shift To Given Offset"; + testBinary = "testQtLocation"; + testGoal = "Verify that coordinates can be calculated as an offset to another position."; + testPreconditions = "None"; + testGroups = "BAT"; + testRequirements = "QTMOBILITY-658: Add a method to QGeoCoordinate which takes an offset and returns another QGeoCoordinate"; + + // Note that significand precision should be taken into account during comparing real numbers, that is why we consider 5.48417e-16 value equal to zero + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select the MapNavigation | | + | Fill in '0' in to Start Latitude field | | + | Fill in '100' in to Start Longitude field | | + | Select Distance/Bearing from *Pre-defined* dropdown list | | + | Fill '1000000, 90' in to the given field | | + | Press the Ok button | Verify that Destination fields are updated with 5.48417e-16 latitude and 108.9932 longitude | + | Fill in '60' in to Start Latitude field | | + | Fill in '100' in to Start Longitude field | | + | Select Distance/Bearing from *Pre-defined* dropdown list | | + | Fill '1000000, 180' in to the given field | | + | Press the Ok button | Verify that Destination fields are updated with 51.0068 latitude and 100 longitude | + | Fill in '60' in to Start Latitude field | | + | Fill in '100' in to Start Longitude field | | + | Select Distance/Bearing from *Pre-defined* dropdown list | | + | Fill '1000000, 20' in to the given field | | + | Press the Ok button | Verify that Destination fields are updated with 68.2523 latitude and 108.296 longitude |" )); }, - // Landmarks - store_and_load_a_landmark_data: { // Valid landmarks are -90~90 latitude, and -180~180 longitude landmark : ["landmark", "20", "120"] @@ -108,12 +153,21 @@ testcase = { store_and_load_a_landmark: function(name, latitude, longitude) { - startApplication("landmarkbrowser"); + // Test meta data + testApplication = "Landmark - Store and Load Landmarks"; + testBinary = "landmarkbrowser"; + testGoal = "Verify that a landmark can be created (and stored)"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + startApplication(testBinary); select("Add Landmark"); enter("Latitude", latitude); enter("Longitude", longitude); enter("Name", name); select("Ok"); + prompt("Verify that the landmark record is created"); }, @@ -125,7 +179,15 @@ testcase = { negative_store_and_load_a_landmark: function(name, latitude, longitude) { - startApplication("landmarkbrowser"); + // Test meta data + testApplication = "Landmark - Handling Invalid Landmark"; + testBinary = "landmarkbrowser"; + testGoal = "Verify that invalid landmarks are detected and handled gracefully."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + startApplication(testApplication); select("Add Landmark"); enter("Latitude", latitude); enter("Longitude", longitude); @@ -138,155 +200,249 @@ testcase = { sorted_search_based_on_category: function() { - prompt(twiki('---+++ Landmarks for the specified category are displayed - | *Step* | *Verification* | - | Create Accomodation category | | - | Create Businesses category | | - | Run the landmarkbrowser application | | - | Create A1 landmark in Accomodation category | | - | Create A2 landmark in Accomodation category | | - | Create BB landmark in Businesses category | | - | Press the Set Filter button | | - | Select the Category checkbox | | - | Select Accomodation category | | - | Press Ok button | Verify that only A1 and A2 landmark is in the list and they are present in alphabetical order | - | Press the Set Filter button | | - | Select Education category | | - | Press Ok button | Verify that no landmarks are in the list |' + // Test meta data + testApplication = "Landmark - Search on Category"; + testBinary = "landmarkbrowser"; + testGoal = "Verify that landmarks can be sorted and filtered."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Create Accomodation category | | + | Create Businesses category | | + | Run the landmarkbrowser application | | + | Create A1 landmark in Accomodation category | | + | Create A2 landmark in Accomodation category | | + | Create BB landmark in Businesses category | | + | Press the Set Filter button | | + | Select the Category checkbox | | + | Select Accomodation category | | + | Press Ok button | Verify that only A1 and A2 landmark is in the list and they are present in alphabetical order | + | Press the Set Filter button | | + | Select Education category | | + | Press Ok button | Verify that no landmarks are in the list |" )); }, sort_landmarks_in_alphabetical_and_nearest: function() { - prompt(twiki('---+++ Nearest landmarks are displayed - | *Step* | *Verification* | - | Run the landmarkbrowser application | | - | Create landmark A(12;0) | | - | Create landmark B(10;0) | | - | Create landmark C(8;0) | | - | Create landmark D(8;0) | | - | Press Set Filter button | | - | Select Proximity checkbox | | - | Fill in 0 in to Lat field | | - | Fill in 0 in to Long field | - | Fill in 10000000 in to Radius field| | - | Press Ok button | Verify that C, D, B, A landmarks are in the list (not in alphabetical order) | - | Press Set Filter button | | - | Change radius value to 1000000 | | - | Press Ok button | Verify that only C and D landmarks are in the list | - | Press Set Filter button | | - | Deselect Proximity checkbox | | - | Press Ok button | Verify that landmarks appear in alphabetical order from A to Z |' + // Test meta data + testApplication = "Landmark - Nearest Landmarks"; + testBinary = "landmarkbrowser"; + testGoal = "Verify that landmarks can be displayed in sorted order with nearest first."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Create landmark A(12;0) | | + | Create landmark B(10;0) | | + | Create landmark C(8;0) | | + | Create landmark D(8;0) | | + | Press Set Filter button | | + | Select Proximity checkbox | | + | Fill in 0 in to Lat field | | + | Fill in 0 in to Long field | + | Fill in 10000000 in to Radius field| | + | Press Ok button | Verify that C, D, B, A landmarks are in the list (not in alphabetical order) | + | Press Set Filter button | | + | Change radius value to 1000000 | | + | Press Ok button | Verify that only C and D landmarks are in the list | + | Press Set Filter button | | + | Deselect Proximity checkbox | | + | Press Ok button | Verify that landmarks appear in alphabetical order from A to Z |" )); }, landmarks_within_range_of_a_position: function() { - prompt(twiki('---+++ Landmarks within range are displayed - | *Step* | *Verification* | - | Run the landmarkbrowser application | | - | Create landmark A(12;0) | | - | Create landmark B(10;0) | | - | Create landmark C(8;0) | | - | Create landmark D(8;0) | | - | Press Set Filter button | | - | Select Box checkbox | | - | Fill in 9 in to Top Left Lat field | | - | Fill in 0 in to Top Left Long field | | - | Fill in 0 i to Bottom Right Lat filed | | - | Fill in 1 in to Bottom Right Long field | | - | Press Ok button | Verify that only C and D landmarks are in the list and landmarks appear in alphabetical order |' + // Test meta data + testApplication = "Landmark - Within Range of Position"; + testBinary = "landmarkbrowser"; + testGoal = "Verify that landmarks within range of a position can be shown"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Create landmark A(12;0) | | + | Create landmark B(10;0) | | + | Create landmark C(8;0) | | + | Create landmark D(8;0) | | + | Press Set Filter button | | + | Select Box checkbox | | + | Fill in 9 in to Top Left Lat field | | + | Fill in 0 in to Top Left Long field | | + | Fill in 0 i to Bottom Right Lat filed | | + | Fill in 1 in to Bottom Right Long field | | + | Press Ok button | Verify that only C and D landmarks are in the list and landmarks appear in alphabetical order |" )); }, - + create_edit_and_delete_a_landmark: function() { - //Landmark manager provides notifications whenever landmarks are added, updated or deleted - prompt(twiki('---+++ Landmarks are added, edited and deleted - | *Step* | *Verification* | - | Run the landmarkbrowser application | | - | Press Add Landmark button | | - | Fill in AAA in to Name field | | - | Fill in 30 into Latitude field | | - | Fill in 30 into Longitude field | | - | Press Ok button | Verify that message "Landmark(s) have been added" appears on the screen | - | Press Ok button | Verify that AAA landmark is in the landmarks list | - | Select AAA landmark | | - | Press Edit Landmark button | | - | Change Latitude value to 40 | | - | Change Longitude value to 40 | | - | Change Name value to BBB | | - | Press Ok button | Verify that message "Landmark(s) have been edited" appears on the screen | - | Press Ok button | Verify that BBB landmark has new latitude and longitude | - | Select BBB landmark | | - | Press Delete Landmarks button | Verify that message "Landmark(s) have been removed" appears on the screen | - | Press Ok button | Verify that only BBB landmark has been deleted | - | Create 2 new landmarks A1 and A2 | | - | Select both A1 and A2 landmarks | - | Press Delete Landmarks button | Verify that message "Landmark(s) have been removed" appears on the screen | - | Press Ok button | Verify that only A1 and A2 landmarks have been deleted |' + // Test meta data + testApplication = "Landmark - Edit and Delete Landmarks"; + testBinary = "landmarkbrowser"; + testGoal = "Verify that notifications can be send whenever landmarks are added, updated or deleted."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Press Add Landmark button | | + | Fill in AAA in to Name field | | + | Fill in 30 into Latitude field | | + | Fill in 30 into Longitude field | | + | Press Ok button | Verify that message 'Landmark(s) have been added' appears on the screen | + | Press Ok button | Verify that AAA landmark is in the landmarks list | + | Select AAA landmark | | + | Press Edit Landmark button | | + | Change Latitude value to 40 | | + | Change Longitude value to 40 | | + | Change Name value to BBB | | + | Press Ok button | Verify that message 'Landmark(s) have been edited' appears on the screen | + | Press Ok button | Verify that BBB landmark has new latitude and longitude | + | Select BBB landmark | | + | Press Delete Landmarks button | Verify that message 'Landmark(s) have been removed' appears on the screen | + | Press Ok button | Verify that only BBB landmark has been deleted | + | Create 2 new landmarks A1 and A2 | | + | Select both A1 and A2 landmarks | + | Press Delete Landmarks button | Verify that message 'Landmark(s) have been removed' appears on the screen | + | Press Ok button | Verify that only A1 and A2 landmarks have been deleted |" )); }, enumerate_categories: function() { - prompt(twiki('---+++ Categories are displayed - | *Step* | *Verification* | - | Run the landmarkbrowser application | | - | Select Category tab | | - | Create several categories | | - | Swith to the Landmark tab and back to the Category tab | Verify that the created categories are present in the list |' + // Test meta data + testApplication = "Landmark - Enumerate"; + testBinary = "landmarkbrowser"; + testGoal = "Verify that created categories can be showed in a list."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Category tab | | + | Create several categories | | + | Swith to the Landmark tab and back to the Category tab | Verify that the created categories are present in the list |" )); }, add_and_delete_a_category: function() { - //Landmark manager provides notifications whenever categories are added, updated or deleted - prompt(twiki('---+++ Categories are added, edited and deleted - | *Step* | *Verification* | - | Run the landmarkbrowser application | | - | Select Category tab | | - | Press Add Category button | | - | Fill in AAA in to Name field | | - | Press Ok button | Verify that message "Category(ies) have been added" | - | Press Ok button | Verify that AAA is added in list of categories in alphabetical order | - | Press Add Category button | | - | Fill in AAA in to Name field | | - | Press Ok button | Verify that message "Add Category Failed: category already Exists" appears on the screen | - | Press Ok button | | - | Press Add Category button | | - | Press Ok button | Verify that message "Category name must not be empty" appears on the screen | - | Press Ok button | | - | Select AAA category | | - | Press Delete Categories button | Verify that message "Categoty(ies) have been removed" appears on the screen | - | Press Ok button | Verify that list of categories does not contain AAA category only| - | Add A1 and A2 categories | | - | Select A1 and A2 categories | | - | Press Delete Categories button | Verify that message "Categoty(ies) have been removed" appears on the screen | - | Press Ok button | Verify that list of categories does not contain A1 and A2 categories only | - | Select some of predefined categories | | - | Press Delete Category button | Verify tha message "Cannot delete a global category" appears on the screen | - | Press Ok button | Verify that no categories have been deleted |' + //Landmark manager provides notifications whenever categories are added, updated or deleted + // Test meta data + testApplication = "Landmark - Add and Delete Categories "; + testBinary = "landmarkbrowser"; + testGoal = "Verify that the system sends notifications when categories are added or deleted."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Category tab | | + | Press Add Category button | | + | Fill in AAA in to Name field | | + | Press Ok button | Verify that message 'Category(ies) have been added' | + | Press Ok button | Verify that AAA is added in list of categories in alphabetical order | + | Press Add Category button | | + | Fill in AAA in to Name field | | + | Press Ok button | Verify that message 'Add Category Failed: category already Exists' appears on the screen | + | Press Ok button | | + | Press Add Category button | | + | Press Ok button | Verify that message 'Category name must not be empty' appears on the screen | + | Press Ok button | | + | Select AAA category | | + | Press Delete Categories button | Verify that message 'Categoty(ies) have been removed' appears on the screen | + | Press Ok button | Verify that list of categories does not contain AAA category only| + | Add A1 and A2 categories | | + | Select A1 and A2 categories | | + | Press Delete Categories button | Verify that message 'Categoty(ies) have been removed' appears on the screen | + | Press Ok button | Verify that list of categories does not contain A1 and A2 categories only | + | Select some of predefined categories | | + | Press Delete Category button | Verify tha message 'Cannot delete a global category' appears on the screen | + | Press Ok button | Verify that no categories have been deleted |" )); }, - // Maps and Navigation select_service_provider: function() { - startApplication("geoservicedemo"); + // Test meta data + testApplication = "Maps and Navigation - Select Service Provider"; + testBinary = "geoservicedemo"; + testGoal = "Verify that service provider can be selected"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + startApplication(testBinary); select("Service Providers"); select("nokia"); select("Set Service Provider"); - prompt("Verify selected service provider is indicated as current service provider"); + + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | | Verify selected service provider is indicated as current service provider |")); }, request_route_from_one_GPS_location_to_another_data: { - route:["-27.575", "153.088", "-27.465", "153.023", "15901", "15987"] + route1:["-27.575", "153.088", "-27.465", "153.023", "15901", "15987"] }, request_route_from_one_GPS_location_to_another: function(lat1, long1, lat2, long2, distance1, distance2) { - startApplication("geoservicedemo"); + // Test meta data + testApplication = "Maps and Navigation - Route Calculation"; + testBinary = "geoservicedemo"; + testGoal = "Verify that routes can be calculated from one GPS location to another."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + startApplication(testBinary); select("Service Providers"); select("nokia"); select("Set Service Provider"); @@ -297,8 +453,15 @@ testcase = { enter(lat2); enter(long2); select("Ok"); - prompt(twiki("Wait until the route is calculated (should be less than 10 seconds)")); - prompt(twiki("Verify the there are 8 segments, first and last instructions indicate to 'Head toward Logan rd' and 'Turn right onto Bartley St'")); + + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Wait until the route is calculated (should be less than 10 seconds) | Verify the there are 8 segments, first and last instructions indicate to 'Head toward Logan rd' and 'Turn right onto Bartley St'")); + select("routes/route"); compare(getText("distance"), distance1); select("Request Route"); @@ -307,138 +470,253 @@ testcase = { enter(lat1); enter(long1); select("Ok"); - prompt(twiki('Wait until the route is calculated (should be less than 10 seconds)')); - prompt(twiki('Verify the instructions for segments 1 and 2 indicate to Head towards Sedgebrook st and Turn right onto Sedgebrook st')); + + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Wait until the route is calculated (should be less than 10 seconds) | Verify the instructions for segments 1 and 2 indicate to Head towards Sedgebrook st and Turn right onto Sedgebrook st")); + compare(getText("distance"), distance2); }, - + geocoding: function() { - prompt(twiki('---+++ Geocoding - Note that testing via proxy is not recommended, incorrect settings can be a cause of the " Socket operation timed out" error - | *Step* | *Verification* | - | Run the GeoServiceDemo application (sources are /tests/location-testing-tools/geoservicedemo) | | - | Select Search By Adress tab | | - | Select One-box Search checkbox | | - | Fill in "Brandl st, Eight Mile Plains, Australia" in search field | | - | Select Geocoding search | | - | Press Ok button | | - | Wait until data is recieved | | - | Select places | Verify that count = 1 | - | Select place | Verify that latitude is -27.5798, longitude is 153.1 | - | Select address | Verify that Country is AUSTRALIA, country code is AUS, city is Eight Mile Plains, street name is Branl St, post code is 4113 |' + // Test meta data + testApplication = "Maps and Navigation - Geocoding"; + testBinary = "geoservicedemo"; // (sources are /tests/location-testing-tools/geoservicedemo) + testGoal = "Verify that geocoding searches are supported."; + testPreconditions = "Note that testing via proxy is not recommended, incorrect settings can be a cause of the 'Socket operation timed out' error"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Search By Adress tab | | + | Select One-box Search checkbox | | + | Fill in 'Brandl st, Eight Mile Plains, Australia' in search field | | + | Select Geocoding search | | + | Press Ok button | | + | Wait until data is recieved | | + | Select places | Verify that count = 1 | + | Select place | Verify that latitude is -27.5798, longitude is 153.1 | + | Select address | Verify that Country is AUSTRALIA, country code is AUS, city is Eight Mile Plains, street name is Branl St, post code is 4113 |" )); }, - + reverse_geocoding: function() { - prompt(twiki('---+++ Reverse geocoding - Note that testing via proxy is not recommended, incorrect settings can be a cause of the " Socket operation timed out" error - | *Step* | *Verification* | - | Run the GeoServiceDemo application | | - | Select Reverse Geocoding tab | | - | Press Search By Coordinates button | | - | Fill in -27.5798 in Latitude field | | - | Fill in 153.1 in Longitude field | | - | Press Ok button | | - | Wait until data is recieved | | - | Select places/place/adress | Verify that Country is AUSTRALIA, country code is AUS, city is Eight Mile Plains, street name is 54 Branl St, post code is 4113 |' + // Test meta data + testApplication = "Maps and Navigation - Reverse Geocoding"; + testBinary = "geoservicedemo"; + testGoal = "Verify that a geocode can be calculated from a given position."; + testPreconditions = "Note that testing via proxy is not recommended, incorrect settings can be a cause of the 'Socket operation timed out' error"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Reverse Geocoding tab | | + | Press Search By Coordinates button | | + | Fill in -27.5798 in Latitude field | | + | Fill in 153.1 in Longitude field | | + | Press Ok button | | + | Wait until data is recieved | | + | Select places/place/adress | Verify that Country is AUSTRALIA, country code is AUS, city is Eight Mile Plains, street name is 54 Brandl St, post code is 4113 |" )); }, displaying_a_map: function() { - prompt(twiki('---+++ Different views are displayed - Note that internet connection is required for this test case. - Note that Nokia map engine supports only Street, Satellite and Terrain map types - | *Step* | *Verification* | - | Run the MapView application (sources are /tests/location-testing-tools/mapviewer) | Map for current location is displayed on the screen | - | Press Option button | | - | Press Street button (if button is enabled) | Map is drawn in Street view | - | Press Option button | | - | Press Satellite button (if button is enabled) | Map is drawn in Satellite view | - | Press Option button | | - | Press Terrain button (if button is enabled) | Map is drawn in Satellite view |' + // Test meta data + testApplication = "Maps and Navigation - Map View Options"; + testBinary = "mapviewer"; // (sources are /tests/location-testing-tools/mapviewer) + testGoal = "Verify that maps can be shown in street, satellite and terrain mode."; + testPreconditions = "1. internet connection is required for this test case.
1. Nokia map engine supports only Street, Satellite and Terrain map types"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally and map for current location is displayed on the screen | + | Press Option button | | + | Press Street button (if button is enabled) | Map is drawn in Street view | + | Press Option button | | + | Press Satellite button (if button is enabled) | Map is drawn in Satellite view | + | Press Option button | | + | Press Terrain button (if button is enabled) | Map is drawn in Satellite view |" )); }, zooming_support:function() { - prompt(twiki('---+++ Map is zoomed in and out - Note that internet connection is required for this test case. - | *Step* | *Verification* | - | Run the MapView application | Map is displayed on the screen | - | Scroll mouse wheel down | Map is zoomed out correctly | - | Scroll mouse wheel up | Map is zoomed in correctly| - | Double click on the map | Map is zoomed in correctly, step of zooming is consistent|' + // Test meta data + testApplication = "Maps and Navigation - Zooming"; + testBinary = "mapviewer"; // (sources are /tests/location-testing-tools/mapviewer) + testGoal = "Verify that maps can be zoomed in and out."; + testPreconditions = "internet connection is required for this test case."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Run the MapView application | Map is displayed on the screen | + | Scroll mouse wheel down | Map is zoomed out correctly | + | Scroll mouse wheel up | Map is zoomed in correctly| + | Double click on the map | Map is zoomed in correctly, step of zooming is consistent|" )); }, capturing_coordinates:function() { - prompt(twiki('---+++ Coordinates are captured - Note that internet connection is required for this test case. - | *Step* | *Verification* | - | Run the MapView application | Map is displayed on the screen | - | Zoom in tha map to see Brisbane | | - | Right mouse click on the square which represents Brisbane | | - | Select Coordinates menu item | | - | Select Capture menu item | Verify that dialog with coordinates appears on the screen. Latitude is about -27.46, longitude is about 153.02 |' + // Test meta data + testApplication = "Maps and Navigation - Coordinate Capturing"; + testBinary = "mapviewer"; // (sources are /tests/location-testing-tools/mapviewer) + testGoal = "Verify that coordinates can be captured when selecting a location on the map."; + testPreconditions = "internet connection is required for this test case."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally. Map is displayed on the screen | + | Zoom in the map to see Brisbane | | + | Right mouse click on the square which represents Brisbane | | + | Select Coordinates menu item | | + | Select Capture menu item | Verify that dialog with coordinates appears on the screen. Latitude is about -27.46, longitude is about 153.02 |" )); }, pixmap_object_zooming: function() { - //test case for QTMOBILITY-757: Be able to prevent a QGeoMapPixmapObject from being scaled when zooming occurs - //test case for QTMOBILITY-701: Add a QGraphicsItem based map object. //Test application testqtLocation covers just one use case meanwhile we have 8 different situation //depending on what units and transforms are in use (we have 4 types of units (PixelUnit, MeterUnit, RelativeArcSecondUnit, AbsoluteArcSecondUnit) //and 2 types of transforms (BilinearTransform, ExactTransform)). New set of tests has to be created as soon as testqtLocation is improved. - prompt(twiki('---+++ Pixmap object is not scaled during zooming - Note that GPS and internet connection is required for this test case - | *Step* | *Verification* | - | Run the testQtLocation application | | - | Select the MapNavigation | | - | Go to Map tab | Verify that map is loaded for current position | - | Swith to MapObject mode | | - | Tap on the screen to create pixmap object | Verify that blue square appears on the screen in place of touch | - | Switch to Pan/Zoom mode | | - | Increase zoom level | Verify that the blue square is not scaled | - | Decrease zoom level | Verify that the blue square is not scaled |' + + // Test meta data + testApplication = "Maps and Navigation - Pixmap Object Zooming"; + testBinary = "testQtLocation"; + testGoal = "Verify that "; + testPreconditions = "GPS and internet connection is required for this test case"; + testGroups = "BAT"; + testRequirements = "QTMOBILITY-757: Be able to prevent a QGeoMapPixmapObject from being scaled when zooming occurs
+ QTMOBILITY-701: Add a QGraphicsItem based map object."; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select the MapNavigation | | + | Go to Map tab | Verify that map is loaded for current position | + | Swith to MapObject mode | | + | Tap on the screen to create pixmap object | Verify that blue square appears on the screen in place of touch | + | Switch to Pan/Zoom mode | | + | Increase zoom level | Verify that the blue square is not scaled | + | Decrease zoom level | Verify that the blue square is not scaled |" )); }, request_landmarks_for_given_coordinate_with_reverse_geocoding: function() { + // Test meta data + testApplication = "Maps and Navigation - Landmarks for Coordinate with Reverse Geocoding"; + testBinary = "weatherinfo_with_location"; + testGoal = "Verify that "; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps +/* + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally |"); +*/ + skip( "Nothing tested", SkipAll ); }, + //TESTED_COMPONENT=plugins/declarative/location qml_display_map: function() { - //test case for QTMOBILITY-796: QML for Maps & Navigation:mapping - prompt(twiki('---+++ Map is displayed - Note that GPS and internet connection is required for this test case - | *Step* | *Verification* | - | Run the testQtLocation application | | - | Select the MapNavigation.qml | | - | Tap on Mode button | Verify that map is loaded for current position |' + // Test meta data + testApplication = "Location - Map Display"; + testBinary = "testqtlocation"; + testGoal = "Verify that a map can be loaded for a given position."; + testPreconditions = "GPS and internet connection is required for this test case."; + testGroups = "BAT"; + testRequirements = "QTMOBILITY-796: QML for Maps & Navigation:mapping"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select the MapNavigation.qml | | + | Tap on Mode button | Verify that map is loaded for current position |" )); }, qml_zoom_map: function() { - //test case for QTMOBILITY-796: QML for Maps & Navigation:mapping - prompt(twiki('---+++ Zoom in and out the map - Note that GPS and internet connection is required for this test case - | *Step* | *Verification* | - | Run the testQtLocation application | | - | Select the MapNavigation.qml | | - | Tap on the Mode button | Verify that map is loaded | - | Tap on Plus button | Verify that map is zoomed in | - | Tap on Plus button | Verify that zoom level is decreased and map is displayed correctly with new zoom level |' + // Test meta data + testApplication = "Location - Zoom In and Out"; + testBinary = "testQtLocation"; + testGoal = "Verify that "; + testPreconditions = "GPS and internet connection is required for this test case."; + testGroups = "BAT"; + testRequirements = "QTMOBILITY-796: QML for Maps & Navigation:mapping."; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select the MapNavigation.qml | | + | Tap on the Mode button | Verify that map is loaded | + | Tap on Plus button | Verify that map is zoomed in | + | Tap on Plus button | Verify that zoom level is decreased and map is displayed correctly with new zoom level |" )); } -- cgit v1.2.3 From 032c28c213e7ea5d75d2c59f16ea6f07d9009fea Mon Sep 17 00:00:00 2001 From: Ed Baak Date: Tue, 9 Aug 2011 13:38:55 +1000 Subject: Rewrite of messaging tests. According to style guide. Work to be done: extensive review and rewrite of tests. --- tests/systemtests/sys_messaging/sys_messaging.qtt | 1458 +++++++++------------ 1 file changed, 631 insertions(+), 827 deletions(-) diff --git a/tests/systemtests/sys_messaging/sys_messaging.qtt b/tests/systemtests/sys_messaging/sys_messaging.qtt index 712c15c2fe..a2a41e988f 100644 --- a/tests/systemtests/sys_messaging/sys_messaging.qtt +++ b/tests/systemtests/sys_messaging/sys_messaging.qtt @@ -41,878 +41,682 @@ //TESTED_COMPONENT=src/messaging -// returns true if automated testing can be done, false manual testing is to be done -function automatedTestEnvironment(){ - //Automated testing not supported for this test case yet - - return false; - - //return (checkOS("symbian") || checkOS("maemo")); - //return (checkOS("symbian") || checkOS("maemo") || checkOS("linux")); -} - testcase = { - serviceAction_startQuit : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Write Message: Start and Quit - 1. Launch *serviceaction* application - 1. Verify that the UI is shown - 1. Verify that the UI layout is proper and usable on the specific device - 1. Exit the application, verify it exits properly without error - ')); - } + Send_PlainText_Message: function () { + // Test meta data + testApplication = "Messaging - Send Message in Plain Text"; + testBinary = "serviceaction"; + testGoal = "Verify that a message can be sent in plain text."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally, and UI layout is proper and usable on the specific device | + | Fill in To, Subject, Content | | + | Click 'Add attachment' menu item and select file(s) to attach | | + | Click on 'Send' menu entry | Verify that mail has been sent to the desired mailbox with the correct subject, body and complete attachment(s) | + ")); }, - - serviceAction_sendplainTextMessage: function (){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ ServiceAction: Send Message in Plain Text - 1. Launch *serviceeaction* application - 1. Fill in To, Subject, Content - 1. Click "Add attachment" menu item and select file(s) to attach - 1. Click on "Send" menu entry - 1. Check if the mail has been sent to the desired mailbox with the correct subject, body and complete attachment(s) - ')); - } + Send_HTML_Message : function() { + // Test meta data + testApplication = "Messaging - Send Message in HTML"; + testBinary = "serviceaction"; + testGoal = "Verify that a message can be sent in HTML."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally, and UI layout is proper and usable on the specific device | + | Fill in To, Subject, Content | | + | Click 'Add attachment' menu item and select file(s) to attach | | + | Click on 'Send as HTML' menu entry | Verify that mail has been sent to the desired mailbox with the correct subject, body and complete attachment(s) | + ")); }, - serviceAction_sendHTMLMessage : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ ServiceAction: Send Message in HTML - 1. Launch *serviceaction* application - 1. Fill in To, Subject, Content - 1. Click "Add attachment" menu item and select file(s) to attach - 1. Click on "Send as HTML" menu entry - 1. Check if the mail has been sent to the desired mailbox with the correct subject, body and complete attachment(s) - ')); - } + Compose_And_Send_Message_With_Attachment : function() { + // Test meta data + testApplication = "Messaging - Compose and Send With Attachment"; + testBinary = "serviceaction"; + testGoal = "Verify that a message can be sent with an attachment."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally, and UI layout is proper and usable on the specific device | + | Fill in To, Subject, Content | | + | Click Add attachment' menu item and select file(s) to attach | | + | Click on 'Compose menu entry | On Windows, confirm that the Outlook mail client for Windows is now showing | + | Click on the 'Send' menu button in Outlook client, on other platforms, choose send from action | Verify that mail has been sent to the desired mailbox with the correct subject, body and complete attachment(s) | + ")); }, - - serviceAction_composeAndSend : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ ServiceAction: Compose and Send - 1. Launch *serviceaction* application - 1. Fill in To, Subject, Content - 1. Click "Add attachment" menu item and select file(s) to attach - 1. Click on "Compose" menu entry - 1. On Windows, confirm that the Outlook mail client for Windows is now showing - 1. Click on the "Send" menu button in Outlook client, on other platforms, choose send from action - 1. Check if the mail has been sent to the desired mailbox with the correct subject, body and complete attachment(s) - ')); - } + Query_Message : function() { + // Test meta data + testApplication = "Messaging - Query Messages"; + testBinary = "querymessage"; + testGoal = "Verify that received messages can be queried."; + testPreconditions = "*querymessage* is a console application, it must be launched from command line, and the results are shown on command line only
Currently the test is not available for Symbian platforms."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Synchronize a set of test messages to the phone using Nokia Ovi Suite or an equal tool | | + | Launch " + testBinary + " from command line | Verify that all available messages are properly queried and results are correct | + ")); }, - writeMessage_startQuit : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Write Message: Start and Quit - 1. Launch *writemessage* application - 1. Verify that the UI is shown - 1. Verify that the UI layout is proper and usable on the specific device - 1. Exit the application, verify it exits properly without error - ')); - } + /* FIXME + This test requires more work! + WHat does 'according parameters' mean? + Suggestion: search for "Like As" and "Not Like" conditions with wildcard such as %@hotmail.com + */ + Search_Message : function() { + // Test meta data + testApplication = "Messaging - Search Message"; + testBinary = "testQtMessaging"; + testGoal = "Verify that messages can be searched."; + testPreconditions = "A set of test messages sent on a range of dates from various contacts to the phone using Nokia Ovi Suite or an equal tool are available on the device."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Search Messsages tab | | + | Select a search type | | + | Fill in according parameters | | + | Click on Make Query (=Search) | Verify correct messages are shown and can be viewed | + | return to search results | | + | Select an message and click on Show | | + | Answer No to open it within the test application | Verify the message is properly shown | + ")); }, + Receive_Message : function() { + // Test meta data + testApplication = "Messaging - Receive Message"; + testBinary = "testQtMessaging"; + testGoal = "Verify that messages can be received."; + testPreconditions = "There are some messages in Email account, and network is available."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Search Message item | | + | Use By type as search type, Email account, tick Email box | | + | click on Make query | | + | Send a new message to the selected account from other device | | + | In the result page, select a message, click on Send/Receive button | | + | Wait for a while | Verify the new message is retrived to the list | + ")); + }, - writeMessage_sendSMS : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Write Message: Send SMS - 1. Launch *writemessage* application - 1. Choose *SMS* in *Account* field - 1. Fill in a known mobile phone number to *To* field - 1. Verify that the *Subject* field is disabled - 1. Fill in some random text to the body text area - 1. Verify that the *Add*/ *Remove* buttons are disabled for SMS - 1. Click on *Send* - 1. On the recever mobile phone, verify the correct SMS is received - ')); - } - }, - - writeMessage_sendMMS : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Write Message: Send MMS - 1. Launch *writemessage* application - 1. Choose *MMS* in *Account* field - 1. Fill in a known mobile phone number to *To* field - 1. Fill in some random subject to *Subject* field - 1. Fill in some random text to the body text area - 1. Click on *Add* button to add an attachment file to the message - 1. Choose the attachment just added, click on *Remove* to remove it - 1. Click on *Add* button to add two more attachments file to the message - 1. Click on *Send* - 1. On the recever mobile phone, verify the correct MMS is received with attachments - ')); - } + Show_Message : function() { + // Test meta data + testApplication = "Messaging - Show Message"; + testBinary = "keepintouch (alternative: declarativeMessaging, testQtMessaging)"; + testGoal = "Verify that an messages can be shown."; + testPreconditions = "A set of test messages sent on a range of dates from various contacts to the phone using Nokia Ovi Suite or an equal tool are available on the device."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select *Year* from *Contacted within the last* combo box | | + | Click on *Search* | Verify that all contacts contacted in the last year are displayed | + | Click on a contact name | Verify the messages with the contact are shown | + | Select one message | | + | Click on *Show* button | Verify the message details are shown | + | Go back and click on *Forward* button | Verify the forward dialog is shown | + ")); }, - writeMessage_sendEmail : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Write Message: Send Email - 1. Create an Email account called *Email* on the device, verify it sends and receives email properly - 1. Launch *writemessage* application - 1. Choose *Email* in *Account* field - 1. Fill in a known email address to *To* field - 1. Fill in some random subject to *Subject* field - 1. Fill in some random text to the body text area - 1. Click on *Add* button to add an attachment file to the message - 1. Choose the attachment just added, click on *Remove* to remove it - 1. Click on *Add* button to add two more attachments file to the message - 1. Click on *Send* - 1. On the recever email client, verify the correct Email is received with attachments - ')); - } + Delete_Message : function() { + // Test meta data + testApplication = "Messaging - Delete Message"; + testBinary = "testQtMessaging"; + testGoal = "Verify that messages can be deleted."; + testPreconditions = "Some messages are available in Email account, and network available."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Search Message item | | + | Use By type as search type, Email account, tick Email box | | + | click on Make query | | + | In the result page, select a message, click on Show button | | + | Select No button | Verify the message is properly displayed | + | Click on Delete button | Verify the message is deleted from selected account | + ")); + }, + + Send_SMS : function() { + // Test meta data + testApplication = "Messaging - Send SMS"; + testBinary = "writemessage (alternatives: messagingEx and testQtMessaging)"; + testGoal = "Verify that an SMS message can be sent."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally, and UI layout is proper and usable on the specific device | + | Choose *SMS* in *Account* field | | + | Fill in a known mobile phone number to *To* field | Verify that the *Subject* field is disabled | + | Fill in some random text to the body text area | Verify that the *Add*/ *Remove* buttons are disabled for SMS | + | Click on *Send* | On a recever mobile phone, verify the correct SMS is received | + ")); }, - queryMessage_startQuit : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Query Message: Start and Quit - Note: *querymessage* is a console application, it must be launched from command line, and the results are shown on command line only - - 1. Launch *querymessage* application using command line - 1. Verify the application runs with no crash - 1. Exit the application, verify it exits properly without error - ')); - } + Store_SMS : function() { + // Test meta data + testApplication = "Messaging - Store SMS"; + testBinary = "messagingex (alternatives: testQtMessaging)"; + testGoal = "Verify that an SMS message can be saved."; + testPreconditions = ""; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Choose *SMS* in *Account* field (or the SMS tab) | | + | Fill in a known mobile phone number to *To* field | | + | Fill in some random text to the body text area | | + | Click on *Store Message* | Verify the correct SMS is stored in the system (draft folder) | + ")); }, - queryMessage_queryMessage : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Query Message: Start and Quit - Note: *querymessage* is a console application, it must be launched from command line, and the results are shown on command line only - Currently the test is not available for Symbian platforms. - - 1. Synchronize a set of test messages to the phone using Nokia Ovi Suite or an equal tool - 1. Launch *querymessage* application using command line - 1. Verify that the messages are properly queried and results are correct - 1. Exit the application, verify it exits properly without error - ')); - } - }, + Read_SMS : function() { + // Test meta data + testApplication = "Messaging - Read SMS"; + testBinary = "testQtMessaging"; + testGoal = "Verify that an SMS message can be read."; + testPreconditions = "Some messages in SMS account, and network available"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Search Message item | | + | Use By type as search type, SMS account, tick SMS box | | + | click on Make query | | + | In the result page, select a message, click on Show button | | + | Select No button | Verify the message is properly displayed | + | Click on Close | | + | Click on Show button again, select Yes this time | Verify the message is properly displayed using the native client | + ")); + }, - keepInTouch_startQuit : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Keep In Touch: Start and Quit - - 1. Launch *keepintouch* application using command line - 1. Verify the application runs with no crash - 1. Exit the application, verify it exits properly without error - ')); - } + Compose_SMS : function() { + // Test meta data + testApplication = "Messaging - Compose SMS"; + testBinary = "testQtMessaging"; + testGoal = "Verify that an SMS messages can be composed and transferred to native client."; + testPreconditions = ""; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | select SMS tab | | + | Type in destination phone number | | + | Type in some content | | + | Click on Compose | Verify the native SMS client program is launched | + | Save draft and return | | + ")); }, - - keepInTouch_queryContacts : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Keep In Touch: query contacts - - 1. Synchronize a set of test messages sent on a range of dates from various contacts to the phone using Nokia Ovi Suite or an equal tool - 1. Launch *keepintouch* application using command line - 1. Select *Year* from *Contacted within the last* combo box - 1. Click on *Search* - 1. Verify that all contacts contacted in the last year are displayed - 1. Select *3 Months* from *Contacted within the last* combo box - 1. Click on *Search* - 1. Verify that all contacts contacted in the last three months are displayed - 1. Check the *But not in the last* checkbox - 1. Choose *Month* in the combo box next to the checkbox - 1. click on *Search* - 1. Verify that the contacts contacted in the last three months but not in the last month are shown - ')); - } + Send_MMS : function() { + // Test meta data + testApplication = "Messaging - Send MMS"; + testBinary = "writemessage (alternatives: messagingEx and testQtMessaging)"; + testGoal = "Verify that an MMS message can be sent."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally, and UI layout is proper and usable on the specific device | + | Choose *MMS* in *Account* field | | + | Fill in a known mobile phone number to *To* field | | + | Fill in some random subject to *Subject* field | | + | Fill in some random text to the body text area | | + | Click on *Add* button to add an attachment file to the message | | + | Choose the attachment just added, click on *Remove* to remove it | | + | Click on *Add* button to add two more attachments file to the message | | + | Click on *Send* | On the recever mobile phone, verify the correct MMS is received with attachments | + ")); }, - keepInTouch_showMessages : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Keep In Touch: show messages - - 1. Synchronize a set of test messages sent on a range of dates from various contacts to the phone using Nokia Ovi Suite or an equal tool - 1. Launch *keepintouch* application using command line - 1. Select *Year* from *Contacted within the last* combo box - 1. Click on *Search* - 1. Verify that all contacts contacted in the last year are displayed - 1. Click on a contact name - 1. Verify the messages with the contact are shown - 1. Select one message - 1. Click on *Show* button and verify the message details are shown - 1. Go back and click on *Forward* button, verify the forward dialog is shown - ')); - } + Store_MMS : function() { + // Test meta data + testApplication = "Messaging - Store MMS"; + testBinary = "messagingex (alternatives: testQtMessaging)"; + testGoal = "Verify that an MMS message can be saved."; + testPreconditions = ""; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Choose *MMS* in *Account* field (or the MMS tab) | | + | Fill in a known mobile phone number to *To* field | | + | Fill in some random subject to *Subject* field | | + | Fill in some random text to the body text area | | + | Click on *Add Attachment* button to add an attachment file to the message | | + | Choose the attachment just added, click on *Remove Attachment* to remove it | | + | Click on *Add Attachment* button to add two more attachments file to the message | | + | Click on *Store Message* | Verify the correct MMS is stored with attachments | | + ")); }, - messagingEx_startQuit : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ MessageEx: Start and Quit - 1. Launch *messagingex* application - 1. Verify that the UI is shown - 1. Verify that the UI layout is proper and usable on the specific device - 1. Exit the application, verify it exits properly without error - ')); - } - }, + Read_MMS : function() { + // Test meta data + testApplication = "Messaging - Read MMS"; + testBinary = "testQtMessaging"; + testGoal = "Verify that an MMS message can be read."; + testPreconditions = "Some messages in MMS account, and network available"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Search Message item | | + | Use By type as search type, MMS account, tick MMS box | | + | click on Make query | | + | In the result page, select a message, click on Show button | | + | Select No button | Verify the message is properly displayed | + | Click on Close | | + | Click on Show button again, select Yes this time | Verify the message is properly displayed using the native client | + ")); + }, - messagingEx_sendSMS : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ MessagingEx: Send SMS - 1. Launch *messagingEx* application - 1. Choose *SMS* in *Account* field - 1. Fill in a known mobile phone number to *To* field - 1. Fill in some random text to the body text area - 1. Click on *Send Message* - 1. On the recever mobile phone, verify the correct SMS is received - ')); - } + Compose_MMS : function() { + // Test meta data + testApplication = "Messaging - Compose MMS"; + testBinary = "testQtMessaging"; + testGoal = "Verify that an MMS message can be composed."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select MMS tab | | + | Type in destination phone number | | + | Type in a subject and some content | | + | Insert some attachments | | + | Click on Compose | Verify the native SMS client program is launched | + | Save draft and return | | + ")); }, - messagingEx_storeSMS : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ MessagingEx: Store SMS - 1. Launch *messagingEx* application - 1. Choose *SMS* in *Account* field - 1. Fill in a known mobile phone number to *To* field - 1. Fill in some random text to the body text area - 1. Click on *Store Message* - 1. Verify the correct SMS is stored in the system - ')); - } + Send_Email : function() { + // Test meta data + testApplication = "Messaging - Send Email"; + testBinary = "writemessage (alternatives: messagingEx and testQtMessaging)"; + testGoal = "Verify that an EMail message can be sent."; + testPreconditions = "an Email account called *Email* exists on the device"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally, and UI layout is proper and usable on the specific device | + | Choose *Email* in *Account* field | | + | Fill in a known email address to *To* field | | + | Fill the CC and BCC fields with three email addresses each, separated by ';' | | + | Fill in some random subject to *Subject* field | | + | Fill in some random text to the body text area | | + | Click on *Add* button to add an attachment file to the message | | + | Choose the attachment just added, click on *Remove* to remove it | | + | Click on *Add* button to add two more attachments file to the message | | + | Click on *Send* | On the recever email client, verify the correct Email is received with attachments | + | | Verify that CC and BCC adresses have received EMail as well and that To and Cc fields are visible, but Bcc adresses are not visible. | + ")); }, - messagingEx_sendMMS : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ MessagingEx: Send MMS - 1. Launch *messagingex* application - 1. Choose *MMS* in *Account* field - 1. Fill in a known mobile phone number to *To* field - 1. Fill in some random subject to *Subject* field - 1. Fill in some random text to the body text area - 1. Click on *Add Attachment* button to add an attachment file to the message - 1. Choose the attachment just added, click on *Remove Attachment* to remove it - 1. Click on *Add Attachment* button to add two more attachments file to the message - 1. Click on *Send Message* - 1. On the recever mobile phone, verify the correct MMS is received with attachments - ')); - } - }, + //FIXME: This test needs to become a lot more specific, e.g. *which* encoding formats to we want to test? + // and does that mean the test can (and should) be combined with Send_EMail?? + Send_EMail_with_Encoding_Formats : function() { + // Test meta data + testApplication = "Messaging - Supported Encoding Formats"; + testBinary = "testQtMessaging"; + testGoal = "Verify that account settings can be send with various encoding formats."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Create Message item | | + | Select Email Message button | | + | Click on Settings button | | + | Click on Charsets button | | + | Click on Add button to add some charsets | | + | Click on Done button | | + | Change the Text/Html settings | | + | Click on Done to return to the Email creating dialog | | + | Store/compose/send the message | Verify the message has been properly stored/composed/sent using desired charsets and format | + ")); + }, - messagingEx_storeMMS : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ MessagingEx: Store MMS - 1. Launch *messagingex* application - 1. Choose *MMS* in *Account* field - 1. Fill in a known mobile phone number to *To* field - 1. Fill in some random subject to *Subject* field - 1. Fill in some random text to the body text area - 1. Click on *Add Attachment* button to add an attachment file to the message - 1. Choose the attachment just added, click on *Remove Attachment* to remove it - 1. Click on *Add Attachment* button to add two more attachments file to the message - 1. Click on *Store Message* - 1. Verify the correct MMS is stored with attachments - ')); - } + Store_Email : function() { + // Test meta data + testApplication = "Messaging - Store EMail"; + testBinary = "messagingex (alternatives: testQtMessaging)"; + testGoal = "Verify that an EMail message can be saved."; + testPreconditions = "Email account called *Email* exists on the device"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Choose *Email* in *Account* field | | + | Fill in a known email address to *To* field | | + | Fill in some random subject to *Subject* field | | + | Fill in some random text to the body text area | | + | Click on *Add Attachment* button to add an attachment file to the message | | + | Choose the attachment just added, click on *Remove Attachment* to remove it | | + | Click on *Add Attachment* button to add two more attachments file to the message | | + | Click on *Store Message* | Verify the correct Email is stored (in draft folder) with attachments | + ")); }, - messagingEx_sendEmail : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ messagingEx: Send Email - 1. Create an Email account called *Email* on the device, verify it sends and receives email properly - 1. Launch *messagingex* application - 1. Choose *Email* in *Account* field - 1. Fill in a known email address to *To* field - 1. Fill in some random subject to *Subject* field - 1. Fill in some random text to the body text area - 1. Click on *Add Attachment* button to add an attachment file to the message - 1. Choose the attachment just added, click on *Remove Attachment* to remove it - 1. Click on *Add Attachment* button to add two more attachments file to the message - 1. Click on *Send Message* - 1. On the recever email client, verify the correct Email is received with attachments - ')); - } - }, + Read_Email : function() { + // Test meta data + testApplication = "Messaging - Read E-Mail"; + testBinary = "testQtMessaging"; + testGoal = "Verify that an EMail message can be read."; + testPreconditions = " 1. Email account called *Email* exists on the device
1. Email accounts contains valid messages.
1. Network is available."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Search Message item | | + | Use By type as search type, Email account, tick Email box | | + | click on Make query | | + | In the result page, select a message, click on Show button | | + | Select No button | Verify the message is properly displayed | + | Click on Close | | + | Click on Show button again, select Yes this time | Verify the message is properly displayed using the native client | + ")); + }, - messagingEx_storeEmail : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ messagingEx: Store Email - 1. Create an Email account called *Email* on the device, verify it sends and receives email properly - 1. Launch *messagingex* application - 1. Choose *Email* in *Account* field - 1. Fill in a known email address to *To* field - 1. Fill in some random subject to *Subject* field - 1. Fill in some random text to the body text area - 1. Click on *Add Attachment* button to add an attachment file to the message - 1. Choose the attachment just added, click on *Remove Attachment* to remove it - 1. Click on *Add Attachment* button to add two more attachments file to the message - 1. Click on *Store Message* - 1. Verify the correct Email is stored with attachments - ')); - } + Compose_Email : function() { + // Test meta data + testApplication = "Messaging - Compose EMail"; + testBinary = "testQtmessaging"; + testGoal = "Verify that an messages can be composed."; + testPreconditions = "At least one email account exists on the phone."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Email tab | | + | Select account for From, if necessary, change Settings by clicking on Settings | | + | Type in destination email address, together with To, CC, BCC | | + | Type in subject and some content | | + | Insert some attachments | | + | Click on Compose | Verify the native Email client program is launched | + | Save draft and return | | + ")); }, - declarativeMessaging_startQuit : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Declarative Messaging: Start and Quit - 1. Launch *declarativemessaging* application - 1. Verify that the UI is shown - 1. Verify that the UI layout is proper and usable on the specific device - 1. Exit the application, verify it exits properly without error - ')); - } + Query_Contacts : function() { + // Test meta data + testApplication = "Messaging - Query Contacts"; + testBinary = "keepintouch"; + testGoal = "Verify that contacts meeting specific parameters can be queried."; + testPreconditions = "test messages received on a range of dates from various contacts are available on the phone."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select *Year* from *Contacted within the last* combo box | | + | Click on *Search* | Verify that all contacts contacted in the last year are displayed | + | Select *3 Months* from *Contacted within the last* combo box | | + | Click on *Search* | Verify that all contacts contacted in the last three months are displayed | + | Check the *But not in the last* checkbox | | + | Choose *Month* in the combo box next to the checkbox | | + | click on *Search* | Verify that the contacts contacted in the last three months but not in the last month are shown | + ")); }, - declarativeMessaging_ShowDetails : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Declarative Messaging: Show Details - - 1. Start declarativeMessaging application - 1. Verify that the sample messages are listed - 1. Randomly click on a sample message - 1. Verify that the message details are shown - ')); - } - }, - - bluewheelMessaging_startQuit : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Start and Quit - - 1. Start blue wheel test application - 1. Verify the application is loaded properly - 1. Select Messaging from the list - 1. Verify the messaging test application is launched - ')); - } - }, - - bluewheelMessaging_SMS_Compose : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: SMS Compose - - 1. Start messaging test application - 1. select SMS tab - 1. Type in destination phone number - 1. Type in some content - 1. Click on Compose - 1. Verify the native SMS client program is launched - 1. Save draft and return - ')); - } - }, - bluewheelMessaging_SMS_Store : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: SMS Store - - 1. Start messaging test application - 1. select SMS tab - 1. Type in destination phone number - 1. Type in some content - 1. Click on Store - 1. Verify the message has been stored in draft folder - ')); - } - }, - - bluewheelMessaging_SMS_Send : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: SMS Send - - 1. Start messaging test application - 1. select SMS tab - 1. Type in destination phone number - 1. Type in some content - 1. Click on Send - 1. Verify the message has been sent correctly - ')); - } - }, - - bluewheelMessaging_Email_Compose : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Email Compose - - 1. Create at least one email account on the phone - 1. Start messaging test application - 1. select Email tab - 1. Select account for From, if necessary, change Settings by clicking on Settings - 1. Type in destination email address, together with To, CC, BCC - 1. Type in subject and some content - 1. Insert some attachments - 1. Click on Compose - 1. Verify the native Email client program is launched - 1. Save draft and return - ')); - } - }, - - bluewheelMessaging_Email_Store : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Email Store - - 1. Create at least one email account on the phone - 1. Start messaging test application - 1. select Email tab - 1. Select account for From, if necessary, change Settings by clicking on Settings - 1. Type in destination email address, together with To, CC, BCC - 1. Type in subject and some content - 1. Insert some attachments - 1. Click on Store - 1. Verify the email is stored in the draft folder of selected account - ')); - } - }, - - bluewheelMessaging_Email_Send : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Email Send - - 1. Create at least one email account on the phone - 1. Start messaging test application - 1. select Email tab - 1. Select account for From, if necessary, change Settings by clicking on Settings - 1. Type in destination email address, together with To, CC, BCC - 1. Type in subject and some content - 1. Insert some attachments - 1. Click on Send - 1. Verify the email has been sent to the receivers, including to, cc, and bcc - ')); - } - }, - -/* - New tests proposed - bluewheelMessaging_Email_Add_Attachments - bluewheelMessaging_Email_Clear_Attachments - bluewheelMessaging_Email_Store_with_Attachments - bluewheelMessaging_Email_Send_with_Attachments - bluewheelMessaging_Email_Settings_Add_Charsets - bluewheelMessaging_Email_Settings_Clear_Charsets - bluewheelMessaging_Email_Settings_Change_Bodytype - bluewheelMessaging_Email_Send_cross_Charsets - bluewheelMessaging_Email_Store_cross_Charsets - bluewheelMessaging_Email_Compose_cross_Charsets - bluewheelMessaging_Email_Send_cross_Bodytype - bluewheelMessaging_Email_Store_cross_Bodytype - bluewheelMessaging_Email_Compose_cross_Bodytype - bluewheelMessaging_Email_ManageAccounts_Select_Account - bluewheelMessaging_Email_ManageAccounts_Delete_Account -*/ - - bluewheelMessaging_MMS_Compose : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: MMS Compose - - 1. Start messaging test application - 1. select MMS tab - 1. Type in destination phone number - 1. Type in a subject and some content - 1. Insert some attachments - 1. Click on Compose - 1. Verify the native SMS client program is launched - 1. Save draft and return - ')); - } - }, - bluewheelMessaging_MMS_Store : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: MMS Store - - 1. Start messaging test application - 1. select MMS tab - 1. Type in destination phone number - 1. Type in a subject and some content - 1. Insert some attachments - 1. Click on Store - 1. Verify the message has been stored in draft folder - ')); - } - }, - - bluewheelMessaging_MMS_Send : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: MMS Send - - 1. Start messaging test application - 1. select MMS tab - 1. Type in destination phone number - 1. Type in a subject and some content - 1. Insert some attachments - 1. Click on Send - 1. Verify the message has been sent correctly - ')); - } - }, - -/* - New tests proposed - bluewheelMessaging_MMS_Add_Attachments - bluewheelMessaging_MMS_Clear_Attachments - bluewheelMessaging_MMS_Store_with_Attachments - bluewheelMessaging_MMS_Send_with_Attachments -*/ - - bluewheelMessaging_Search_Accounts_By_Name : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Search Accounts by Name - - 1. Start Messaging test application - 1. Select Search Accounts tab - 1. Type in an account name, eg. sms, which is not case sensitive - 1. Click on Search - 1. Verify the correct accounts are found and shown in dialog - ')); - } + Search_Accounts_By_Name : function() { + // Test meta data + testApplication = "Messaging - Search Accounts By Name"; + testBinary = "testQtMessaging"; + testGoal = "Verify that accounts can be searched by name."; + testPreconditions = "A set of accounts exist on the device."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Search Accounts tab | | + | Type in an account name, eg. sms, which is not case sensitive | | + | Click on Search | Verify the correct accounts are found and shown in dialog | + ")); }, - bluewheelMessaging_Search_Accounts_By_Id : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Search Accounts by Id - - 1. Start Messaging test application - 1. Select Search Accounts tab - 1. Type in a full Id, case sensitive. You can find the Id strings by doing a search by name - 1. Click on Search - 1. Verify the correct accounts are found and shown in dialog - ')); - } + Search_Accounts_By_Id : function() { + // Test meta data + testApplication = "Messaging - Search Accounts by ID"; + testBinary = "testQtMessaging"; + testGoal = "Verify that messages can be searched by account ID."; + testPreconditions = "A set of test messages sent on a range of dates from various contacts to the phone using Nokia Ovi Suite or an equal tool are available on the device."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Search Accounts tab | | + | Type in a full Id, case sensitive. You can find the Id strings by doing a search by name. | | + | Click on Search | Verify the correct accounts are found and shown in dialog | + ")); }, - bluewheelMessaging_Search_Messages : function() { - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Search Messages - - 1. Start Messaging test application - 1. Select Search Messsages tab - 1. Select a search type - 1. Fill in according parameters - 1. Click on Make Query - 1. Verify correct messages are found and shown - 1. Select an message and click on Show - 1. Answer Yes to open it in native client - 1. Verify the message is properly shown -http://www.google.com/ 1. return to search results - 1. Select an message and click on Show - 1. Answer No to open it within the test application - 1. Verify the message is properly shown - 1. Repeat the test for each search type with random query parameters - ')); - } + Account_Settings : function() { + // Test meta data + testApplication = "Messaging - Account Settings"; + testBinary = "testQtMessaging"; + testGoal = "Verify that account settings can be set."; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Create Message item | | + | Select Email Message button | | + | Click on Manage Accounts button | | + | Click on Select account combo box and choose an Email account | Verify all Email account properties are properly displayed | + | Click on Select account button | | + | Go back to the Email creating dialog, fill in all fields with valid values | | + | Store/Compose/Send the message | Verify the message has been properly stored/composed/sent with desired account | + ")); }, - bluewheelMessaging_Account_Settings : function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Account settings can be set - - 1. Start Messaging test application - 1. Select Create Message item - 1. Select Email Message button - 1. Click on Manage Accounts button - 1. Click on Select account combo box and choose an Email account - 1. Verify all Email account properties are properly displayed - 1. Click on Select account button - 1. Go back to the Email creating dialog, fill in all fields with valid values - 1. Store/Compose/Send the message - 1. Verify the message has been properly stored/composed/sent with desired account - ')); - } - }, - - bluewheelMessaging_Encoding_Format_Settings : function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Encoding and format settings can be set - - 1. Start Messaging test application - 1. Select Create Message item - 1. Select Email Message button - 1. Click on Settings button - 1. Click on Charsets button - 1. Click on Add button to add some charsets - 1. Click on Done button - 1. Change the Text/Html settings - 1. Click on Done to return to the Email creating dialog - 1. Store/compose/send the message - 1. Verify the message has been properly stored/composed/sent using desired charsets and format - ')); - } - }, - - - bluewheelMessaging_Specify_Addresses : function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Can specify addresses for: To, CC, BCC - - 1. Start Messaging test application - 1. Select Create Message item - 1. Select SMS Message button - 1. Fill in the To address - 1. Send the message and verify the message is sent to desired receiver - 1. Go back and Select MMS Message button - 1. Fill in the To address and other fields - 1. Send the message and verify the message is sent to desired receiver - 1. Go back and Select Email Message button - 1. Fill in the To/CC/BCC with three email addresses each, separated by ; - 1. Fill in subject and content, add some attachments - 1. Send the message - 1. Verify that all the addresses receives the message correctly - 1. Verify that all the receivers can see the addresses in To and CC correctly, but not BCC - ')); - } - }, - - - bluewheelMessaging_Read_SMS : function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Able to read SMS - - 1. Start Messaging test application - 1. Make sure there are some messages in SMS account, and network available - 1. Select Search Message item - 1. Use By type as search type, SMS account, tick SMS box - 1. click on Make query - 1. In the result page, select a message, click on Show button - 1. Select No button - 1. Verify the message is properly displayed - 1. Click on Close - 1. Click on Show button again, select Yes this time - 1. Verify the message is properly displayed using the native client - ')); - } - }, - - bluewheelMessaging_Read_MMS : function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Able to read MMS - - 1. Start Messaging test application - 1. Make sure there are some messages in MMS account, and network available - 1. Select Search Message item - 1. Use By type as search type, MMS account, tick MMS box - 1. click on Make query - 1. In the result page, select a message, click on Show button - 1. Select No button - 1. Verify the message is properly displayed - 1. Click on Close - 1. Click on Show button again, select Yes this time - 1. Verify the message is properly displayed using the native client - ')); - } - }, - - - bluewheelMessaging_Read_Email : function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Able to read Email - - 1. Start Messaging test application - 1. Make sure there are some messages in Email account, and network available - 1. Select Search Message item - 1. Use By type as search type, Email account, tick Email box - 1. click on Make query - 1. In the result page, select a message, click on Show button - 1. Select No button - 1. Verify the message is properly displayed - 1. Click on Close - 1. Click on Show button again, select Yes this time - 1. Verify the message is properly displayed using the native client - ')); - } - }, - - - bluewheelMessaging_Delete_Message : function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Able to delete messages - 1. Start Messaging test application - 1. Start Messaging test application - 1. Make sure there are some messages in Email account, and network available - 1. Select Search Message item - 1. Use By type as search type, Email account, tick Email box - 1. click on Make query - 1. In the result page, select a message, click on Show button - 1. Select No button - 1. Verify the message is properly displayed - 1. Click on Delete button - 1. Verify the message is deleted from selected account - 1. Repeat this test for SMS and MMS - ')); - } - }, - - - bluewheelMessaging_Receive_Message : function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Able to receive SMS, MMS and Email - - 1. Start Messaging test application - 1. Make sure there are some messages in Email account, and network available - 1. Select Search Message item - 1. Use By type as search type, Email account, tick Email box - 1. click on Make query - 1. Send a new message to the selected account from other device - 1. In the result page, select a message, click on Send/Receive button - 1. Wait for a while, verify the new message is retrived to the list - 1. Repeat this test for SMS and MMS - ')); - } - }, - - bluewheelMessaging_Search_Message_Wildcard_Search : function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Wildcard Search - - 1. Start Messaging test application - 1. Make sure there are some messages in Email account, and network available - 1. Select Search Message item - 1. Use By Receipient as search type, Email account as account - 1. Select Like as condition type - 1. Fill in the Receipient text box with wildcard, eg %@hotmail.com, use SQL like syntax wildcards - 1. Click on search button to make search - 1. Verify that the correct results has been returned - 1. Repeat this test with Not Like condition type - 1. Repeat this test for SMS and MMS - ')); - } - }, - - bluewheelMessaging_Synchronize: function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Synchronize - - 1. Start Messaging test application - 1. Make sure there are some messages in Email account, and network available - 1. Select Search Message item - 1. Use By Type as search type, Email account as account - 1. Click on search button to make search - 1. In the message view, click on Synchronize button - 1. Verify synchronization returns in reasonable time - 1. Send a message to the Email account - 1. Click on the Synchronize button again - 1. Verify the new message shows up in the view - 1. Repeat this test for SMS and MMS - ')); - } - }, - - bluewheelMessaging_Send_Receive: function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Send Receive - - 1. Start Messaging test application - 1. Make sure there are some messages in Email account, and network available - 1. Select Search Message item - 1. Use By Type as search type, Email account as account - 1. Click on search button to make search - 1. In the message view, click on Send Receive button - 1. Verify synchronization returns in reasonable time - 1. Send a message to the Email account - 1. Click on the Send Receive button again - 1. Verify the new message shows up in the view - 1. Repeat this test for SMS and MMS - ')); - } - }, - - bluewheelMessaging_Show_Message: function(){ - if (automatedTestEnvironment()){ - }else{ - prompt(twiki('---++++ Blue Wheel Messaging: Show_Message - - 1. Start Messaging test application - 1. Make sure there are some messages in Email account, and network available - 1. Select Search Message item - 1. Use By Type as search type, Email account as account - 1. Click on search button to make search - 1. In the message view, click on a message, and click on Show - 1. When being asked, choose Yes - 1. Verify the message is properly shown with native client - 1. Close the native messaging client - 1. Click on another message, and click on Show again - 1. When being asked, choose to download details - 1. Verify the message is shown in Bluewheel message client - 1. Click on Attachments, verify the attachments are shown - 1. Select an attachment, save it and verify it saves fine - 1. Close attachment dialog - 1. Click on Properties, verify the properties are properly shown - 1. Close properties dialog - 1. Click on Unread, switch to the native message client, verify the message is marked as Unread status - 1. Go back to the Bluewheel application, click on Read - 1. Verify the message is marked as Read status - 1. Click on Reply button, send reply, verify the message is replied - 1. Go back, click on Forward button, send, verify the message is forwarded - 1. Go back, click on Edit button, change something in the message, verify the change are saved - 1. Go back, click on Move button, select a target folder, verify the message is moved to that folder - 1. Go back, click on Delete button, verify the message is deleted - 1. Repeat this test for SMS and MMS - ')); - } - }, - - /* - New tests proposed - bluewheelMessaging_Search_Messages_By_Type - bluewheelMessaging_Search_Messages_By_Priority - bluewheelMessaging_Search_Messages_By_Sender - bluewheelMessaging_Search_Messages_By_Receipient_To - bluewheelMessaging_Search_Messages_By_Receipient_CC - bluewheelMessaging_Search_Messages_By_Receipient_BCC - bluewheelMessaging_Search_Messages_By_Receipient_Any - bluewheelMessaging_Search_Messages_By_Status - bluewheelMessaging_Search_Messages_By_Subject - bluewheelMessaging_Search_Messages_By_Timestamp - bluewheelMessaging_Search_Messages_By_Receiption_Time - bluewheelMessaging_Search_Messages_By_Folder - bluewheelMessaging_Search_Messages_By_Account - - bluewheelMessaging_Search_Messages_Search_SMS - bluewheelMessaging_Search_Messages_Search_MMS - bluewheelMessaging_Search_Messages_Search_Email - bluewheelMessaging_Search_Messages_Search_Cross_Email_Account_Types - + New tests to be considered + Search_Cross_Email_Account_Types + + Search_Messages_By_Type + Search_Messages_By_Priority + Search_Messages_By_Sender + Search_Messages_By_Receipient_To + Search_Messages_By_Receipient_CC + Search_Messages_By_Receipient_BCC + Search_Messages_By_Receipient_Any + Search_Messages_By_Status + Search_Messages_By_Subject + Search_Messages_By_Timestamp + Search_Messages_By_Receiption_Time + Search_Messages_By_Folder + Search_Messages_By_Account + Synchronize_Message + Send_Receive_Message + + Synchronize_SMS + Send_Receive_SMS + + Synchronize_EMail + Send_Receive_EMail + Email_Add_Attachments + Email_Clear_Attachments + Email_Store_with_Attachments + Email_Send_with_Attachments + Email_Settings_Add_Charsets + Email_Settings_Clear_Charsets + Email_Settings_Change_Bodytype + Email_Send_cross_Charsets + Email_Store_cross_Charsets + Email_Compose_cross_Charsets + Email_Send_cross_Bodytype + Email_Store_cross_Bodytype + Email_Compose_cross_Bodytype + Email_ManageAccounts_Select_Account + Email_ManageAccounts_Delete_Account + + MMS_Add_Attachments + MMS_Clear_Attachments + MMS_Store_with_Attachments + MMS_Send_with_Attachments + Synchronize_MMS + Send_Receive_MMS */ } -- cgit v1.2.3 From 36f4fb4af36f03df1d3e26a10a649ad185279d51 Mon Sep 17 00:00:00 2001 From: Ed Baak Date: Tue, 9 Aug 2011 21:22:33 +1000 Subject: Rewrite multimedia tests Updated according coding style guide --- .../systemtests/sys_multimedia/sys_multimedia.qtt | 673 ++++++++++++--------- 1 file changed, 394 insertions(+), 279 deletions(-) diff --git a/tests/systemtests/sys_multimedia/sys_multimedia.qtt b/tests/systemtests/sys_multimedia/sys_multimedia.qtt index 2ce5b335ac..9bc1680114 100644 --- a/tests/systemtests/sys_multimedia/sys_multimedia.qtt +++ b/tests/systemtests/sys_multimedia/sys_multimedia.qtt @@ -67,14 +67,26 @@ A device specific headset is required to be connected to device for radio testin play_an_audio_file: function(extension, filename, format) { - prompt(twiki("Ensure a test "+extension+" file is available on device")); - prompt(twiki("Launch player application -Select [Open] -In [Open File] select the "+filename+extension+" file to return to player UI -Verify selected file has populated playlist window -Highlight file in playlist window by clicking on it -Select [Play] -Verify that the "+format+" file is audible on device")); + // Test meta data + testApplication = "Multimedia - Play Audio File"; + testBinary = "player"; + testGoal = "Verify that Audio files can be played."; + testPreconditions = "Audio files in " + extension + " format are available on device."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select [Open] | | + | In [Open File] select the "+filename+extension+" file to return to player UI | Verify selected file has populated playlist window | + | Highlight file in playlist window by clicking on it | | + | Select [Play] | Verify that the " + format + " file is audible on device | + ")); }, basic_player_controls_for_audio_data: { @@ -83,51 +95,49 @@ Verify that the "+format+" file is audible on device")); basic_player_controls_for_audio: function(extension, filename, format) { - prompt(twiki("Ensure a test "+extension+" file is available on device")); -prompt(twiki("Launch player application -Select [Open] -In [Open File] select the "+filename+extension+" file to return to player UI -Select [Play] to play the file -Select [Pause] -Verify that file has paused -Verify that [Pause] control has now changed to [Play] control -Select [Play] -Verify that file continues to play from where previously paused. -Verify that [Play] icon is now a [Pause] icon -Select [Next File] control -Verify that next file in playlist is playing from start -After some time (10-20 sec) Select [Beginning of File] control -Verify that current file is being played from start -Let some arbitrary time pass, then Select [Beginning of File] control twice in quick succession. -Verify that previous file in playlist is playing from start -Select [Stop] control -Verify that file has stopped playing -Select [Play] -Verify that file continues to play from start of file. -Let file play till end -Verify player continues playing the next file in the playlist window -After some arbitrary time, Select [Stop] -Select [Next File] control -Verify that next file in playlist is highlighted -Verify that file is not automatically playing -Select [Beginning of File] control -Verify that previous file in playlist is highlighted -Select file in playlist -Verify that file plays in player. -Select number of files greater than can be displayed without scrolling in to playlist -Verify that list can be scrolled through -With file playing, verify that hardware keys can change volume up and down -With file playing, verify that UI volume control slider can change volume up and down -Select volume at 50% (or thereabout) -Select [Mute] -Verify that sound is muted while file is playing -Verify that [Mute] control is displaying the Muted icon -Select [Mute] control again -Verify that sound has reverted back to level selected prior to muting -Drag positional slider to right, then release -Verify that player continues to play file at later part of file -Drag positional slider to left, then release -Verify that player continues to play file at earlier part of file")); + // Test meta data + testApplication = "Multimedia - Audio Player Controls"; + testBinary = ""; + testGoal = "Verify that "; + testPreconditions = "a test "+extension+" file is available on device"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select [Open] | | + | In [Open File] select the "+filename+extension+" file to return to player UI | | + | Select [Play] to play the file | | + | Select [Pause] | Verify that file has paused | + | | Verify that [Pause] control has now changed to [Play] control | + | Select [Play] | Verify that file continues to play from where previously paused. | + | | Verify that [Play] icon is now a [Pause] icon | + | Select [Next File] control | Verify that next file in playlist is playing from start | + | After some time (10-20 sec) Select [Beginning of File] control | Verify that current file is being played from start | + | Let some arbitrary time pass, then Select [Beginning of File] control twice in quick succession. | Verify that previous file in playlist is playing from start | + | Select [Stop] control | Verify that file has stopped playing | + | Select [Play] | Verify that file continues to play from start of file. | + | Let file play till end | Verify player continues playing the next file in the playlist window | + | After some arbitrary time, Select [Stop] | | + | Select [Next File] control | Verify that next file in playlist is highlighted | + | | Verify that file is not automatically playing | + | Select [Beginning of File] control | Verify that previous file in playlist is highlighted | + | Select file in playlist | Verify that file plays in player. | + | Select number of files greater than can be displayed without scrolling in to playlist | Verify that list can be scrolled through | + | With file playing, verify that hardware keys can change volume up and down | | + | With file playing, verify that UI volume control slider can change volume up and down | | + | Select volume at 50% (or thereabout) | | + | Select [Mute] | Verify that sound is muted while file is playing | + | | Verify that [Mute] control is displaying the Muted icon | + | Select [Mute] control again | Verify that sound has reverted back to level selected prior to muting | + | Drag positional slider to right, then release | Verify that player continues to play file at later part of file | + | Drag positional slider to left, then release | Verify that player continues to play file at earlier part of file | + ")); // Note: [Color Option] is not implemented so far in player // Note: [Full Screen] opens a blank screen with no content @@ -140,23 +150,34 @@ Verify that player continues to play file at earlier part of file")); seek_controls_for_audio: function(extension, filename, format) { - prompt(twiki("Ensure a test "+extension+" file is available on device")); -prompt(twiki("Launch player application -Select [Open] -In [Open File] select the "+filename+extension+" file to return to player UI -Select [Play] to play the file -Select the [1.0] (Multiplier) control. -Select [2.0] -Verify that file is playing at double speed -With multiplier control set on [2.0], select a new file from the playlist window -Verify that the Multiplier control has reverted back to [1.0] -Verify that the audio is playing at normal speed -Select [Multiplier] control. -Select [0.5] -Verify that file is playing at half speed -With multiplier control set on [0.5], select a new file from the playlist window -Verify that the Multiplier control has reverted back to [1.0] -Verify that the audio is playing at normal speed")); + // Test meta data + testApplication = "Multimedia - Audio Seek Controls"; + testBinary = "player"; + testGoal = "Verify that audio files can be 'searched'"; + testPreconditions = "a test "+extension+" file is available on device"; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select [Open] | | + | In [Open File] select the "+filename+extension+" file to return to player UI | | + | Select [Play] to play the file | | + | Select the [1.0] (Multiplier) control. | | + | Select [2.0] | | + | Verify that file is playing at double speed | | + | With multiplier control set on [2.0], select a new file from the playlist window | Verify that the Multiplier control has reverted back to [1.0] | + | | Verify that the audio is playing at normal speed | + | Select [Multiplier] control. | | + | Select [0.5] | Verify that file is playing at half speed | + | With multiplier control set on [0.5], select a new file from the playlist window | Verify that the Multiplier control has reverted back to [1.0] | + | | Verify that the audio is playing at normal speed | + ")); }, play_a_video_file_data: { @@ -165,15 +186,27 @@ Verify that the audio is playing at normal speed")); play_a_video_file: function(extension, filename, format) { - prompt(twiki("Ensure a test "+extension+" file is available on device")); -prompt(twiki("Launch player application -Select [Open] -In [Open File] select the "+filename+extension+" file to return to player UI -Select [Play] to play the file -Verify selected file has populated playlist -Highlight file in playlist by clicking on it -Select [Play] -Verify that .MP4 file is playing on device")); + // Test meta data + testApplication = "Multimedia - Play Video File"; + testBinary = "player"; + testGoal = "Verify that video files can be played. "; + testPreconditions = "a test "+extension+" file is available on device."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select [Open] | | + | In [Open File] select the "+filename+extension+" file to return to player UI | | + | Select [Play] to play the file | Verify selected file has populated playlist | + | Highlight file in playlist by clicking on it | | + | Select [Play] | Verify that .MP4 file is playing on device | + ")); }, basic_controls_for_video_data: { @@ -182,67 +215,78 @@ Verify that .MP4 file is playing on device")); basic_controls_for_video: function(extension, filename, format) { - prompt(twiki("Launch player application -Select [Open] -In [Open File] select the "+filename+extension+" file to return to player UI -Select [Play] to play the file -Select [Pause] -Verify that file has paused -Verify that the [Pause] icon has changed to a [Play] icon -Select [Play] -Verify that the [Play] icon has changed to a [Pause] icon -Verify that file continues to play from where previously paused. -Select [Next File] -Verify that next file in playlist is playing from start -After some time (10-20 sec) Select [Beginning of File] control -Verify that current file is being played from start -Let arbitrary time pass, then Select [Beginning of File] control twice in quick succession. -Verify that previous file in playlist is playing from start -Select [Stop] -Verify that file has stopped playing -Select [Play] -Verify that file continues to play from start of file. -Let file play till end -Verify player stops at end of file. -Start playing file. -After arbitrary time, Select [Stop] -Select [Next File] -Verify that next file in playlist is highlighted -Verify that file is not automatically playing -Select [Beginning of File] -Verify that previous file in playlist is highlighted -Select file in playlist -Verify that file plays in player. -Select number of files greater than can be displayed without scrolling in to playlist -Verify that list can be scrolled through -With file playing, verify that hardware keys can change volume up and down -With file playing, verify that UI volume control slider can change volume up and down -Select volume at 50% (or thereabout) -Select [Mute] control -Verify that sound is muted while file is playing -Verify that [Mute] control is displaying the Muted icon -Select [Mute] control again -Verify that sound has reverted back to level selected prior to muting -Drag positional slider to right, then release -Verify that player continues to play file at later part of file -Drag positional slider to left, then release -Verify that player continues to play file at earlier part of file -Start playing file -Select [FullScreen] control -Verify that video is now playing in Fullscreen mode -When at end of current file, verify that next file in playlist is being played -When at last file in playlist and at end of file, verify that fullscreen mode is exited and user returned to player interface and that [FullScreen] is no longer selected.")); + // Test meta data + testApplication = "Multimedia - Video Controls"; + testBinary = "player"; + testGoal = "Verify that video file replay can be start/stop/paused"; + testPreconditions = "a test "+extension+" file is available on device."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select [Open] | | + | In [Open File] select the "+filename+extension+" file to return to player UI | | + | Select [Play] to play the file | | + | Select [Pause] | Verify that file has paused | + | | Verify that the [Pause] icon has changed to a [Play] icon | + | Select [Play] | Verify that the [Play] icon has changed to a [Pause] icon | + | | Verify that file continues to play from where previously paused. | + | Select [Next File] | Verify that next file in playlist is playing from start | + | After some time (10-20 sec) Select [Beginning of File] control | Verify that current file is being played from start | + | Let arbitrary time pass, then Select [Beginning of File] control twice in quick succession.| Verify that previous file in playlist is playing from start | + | Select [Stop] | Verify that file has stopped playing | + | Select [Play] | Verify that file continues to play from start of file. | + | Let file play till end | Verify player stops at end of file. | + | Start playing file. | | + | After arbitrary time, Select [Stop] | | + | Select [Next File] | Verify that next file in playlist is highlighted | + | | Verify that file is not automatically playing | + | Select [Beginning of File] | Verify that previous file in playlist is highlighted | + | Select file in playlist | Verify that file plays in player. | + | Select number of files greater than can be displayed without scrolling in to playlist | Verify that list can be scrolled through | + | With file playing, verify that hardware keys can change volume up and down | | + | With file playing, verify that UI volume control slider can change volume up and down | | + | Select volume at 50% (or thereabout) | | + | Select [Mute] control | Verify that sound is muted while file is playing | + | | Verify that [Mute] control is displaying the Muted icon | + | Select [Mute] control again | Verify that sound has reverted back to level selected prior to muting | + | Drag positional slider to right, then release | Verify that player continues to play file at later part of file | + | Drag positional slider to left, then release | Verify that player continues to play file at earlier part of file | + | Start playing file | | + | Select [FullScreen] control | Verify that video is now playing in Fullscreen mode | + | When at end of current file | Verify that next file in playlist is being played | + | When at last file in playlist and at end of file | Verify that fullscreen mode is exited and user returned to player interface and that [FullScreen] is no longer selected. | + ")); }, seek_controls_for_video: function() { - prompt(twiki(" -While playing a video file, Select or Tap on [1.0] (Multiplier) control -Select [2.0] -Verify that file is playing at double speed -Select [Multiplier] control -Select [0.5] -Verify that file is playing at half speed")); + // Test meta data + testApplication = "Multimedia - Video Seek"; + testBinary = "player"; + testGoal = "Verify that video files can be played at various replay speeds (search mode)."; + testPreconditions = "Video files are available for testing on the device."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | While playing a video file, Select or Tap on [1.0] (Multiplier) control | | + | Select [2.0] | Verify that file is playing at double speed | + | Select [Multiplier] control | | + | Select [0.5] | Verify that file is playing at half speed | + ")); }, basic_controls_for_streamed_content: function() @@ -253,93 +297,140 @@ Verify that file is playing at half speed")); // run-standalone.sh ./player http://202.6.74.107:8060/triplej.mp3 //*Note* For this test you need a playlist of streaming media urls. Suggest: http://202.6.74.107:8060/triplej.mp3 ; http://www.abc.net.au/streaming/triplej.asx ; rtsp://media1.abc.net.au/broadcast/triplej.rm ; mms://media3.abc.net.au/triplej ; depending on your platform and backend support. - prompt(twiki("Launch player application -In player application, Select or Tap [Open] -In [Open File] navigate and highlight test playlist file -Select or Tap on selected file to return to player UI -Verify selected file has populated playlist -Highlight file in playlist by selecting or clicking it -Select [Play] -Verify that stream is playing on device -Select [Pause] -Verify that stream is paused on device -Verify that the [Pause] button has changed to a [Play] button -Select [Play] again -Verify that stream is playing on device -Select [Stop] -Open local mp3 file in to play list and select it to play -Verify that the mp3 plays while the stream name is still present in the playlist -Re-select the stream in the playlist -Verify that the stream starts playing again -Select [Next File] -Verify that the player started playing the next file in the playlist -Select [Previous File] -Verify that the original stream is playing again -During stream playback, have headphones connected to device -Verify that the sound is now playing through the headphones -Invoke a system notification on the device (such as an incoming SMS) -Verify that the device correctly transmits the audible system notification through the devices speakers and then returns to playing the stream through the headphones")); + // Test meta data + testApplication = "Multimedia - Content Streaming"; + testBinary = "player"; + testGoal = "Verify that streaming playlist can be played."; + testPreconditions = ""; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | In player application, Select or Tap [Open] | | + | In [Open File] navigate and highlight test (streaming) playlist file | | + | Select or Tap on selected file to return to player UI | Verify selected file has populated playlist | + | Highlight file in playlist by selecting or clicking it | | + | Select [Play] | Verify that stream is playing on device | + | Select [Pause] | Verify that stream is paused on device | + | | Verify that the [Pause] button has changed to a [Play] button | + | Select [Play] again | Verify that stream is playing on device | + | Select [Stop] | | + | Open local mp3 file in to play list and select it to play | Verify that the mp3 plays while the stream name is still present in the playlist | + | Re-select the stream in the playlist | Verify that the stream starts playing again | + | Select [Next File] | Verify that the player started playing the next file in the playlist | + | Select [Previous File] | Verify that the original stream is playing again | + | During stream playback, have headphones connected to device | Verify that the sound is now playing through the headphones | + | Invoke a system notification on the device (such as an incoming SMS) | Verify that the device correctly transmits the audible system notification through the devices speakers and then returns to playing the stream through the headphones | + ")); }, - + play_a_radio_transmission: function() { -// *Note* This test requires radio reception and headphones to be connected to device -// *Note* Audible system notifications should be enabled for this test - - prompt(twiki("Start Radio application -Verify that 0 KHz and No Signal is displayed -Select [Scan Up] -Audible white noise should be heard as the radio searches for a frequency lock -Frequency should be increasing in 100 KHz steps until a strong signal is found -Verify that a radio signal can be heard. It is possible for the radio to lock on a silent station signal, in that case progress further up the frequencies -Once a strong audible signal is found -Verify that the stations frequency and Got Signal message is displayed -Select [Scan Up] -Verify that the radio has moved off the previous station and in progressing through the frequencies -Once on a radio station, Select [Freq Up] -Verify that the radio frequency has moved off the station by 100KHz and is stationary -Select [Freq Up] again -Verify that the radio frequency has moved up another 100KHz and is stationary -Select [Freq Down] twice -Verify that you are now at the frequency of the previous radio station and that the signal is audible -Select [Scan Down] -Verify that the radio has moved off the previous station, progressing through the frequencies, and finds the original station from this test -Exit the radio application -Verify that the radio station is no longer heard")); + // Test meta data + testApplication = "Multimedia - Play Radio Transmission"; + testBinary = "radio"; + testGoal = "Verify that radio stations can be played."; + testPreconditions = "1. This test requires radio reception and headphones to be connected to device."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | | Verify that 0 KHz and No Signal is displayed | + | Select [Scan Up] | Audible white noise should be heard as the radio searches for a frequency lock. Frequency should be increasing in 100 KHz steps until a strong signal is found | + | | Verify that a radio signal can be heard. It is possible for the radio to lock on a silent station signal, in that case progress further up the frequencies | + | Once a strong audible signal is found | Verify that the stations frequency and Got Signal message is displayed | + | Select [Scan Up] | Verify that the radio has moved off the previous station and in progressing through the frequencies | + | Once on a radio station, Select [Freq Up] | Verify that the radio frequency has moved off the station by 100KHz and is stationary | + | Select [Freq Up] again | Verify that the radio frequency has moved up another 100KHz and is stationary | + | Select [Freq Down] twice | Verify that you are now at the frequency of the previous radio station and that the signal is audible | + | Select [Scan Down] | Verify that the radio has moved off the previous station, progressing through the frequencies, and finds the original station from this test | + | Exit the radio application | Verify that the radio station is no longer heard | + ")); }, radio_interrupted_by_system_notification: function() { - prompt(twiki("Launch the radio application -Locate a strong radio station signal by scanning upwards -While on a strong and audible radio signal, evoke a system notification on device (eg: incoming SMS, alarm notification) -Verify that after the system notification has been delivered, the radio reverts to outputting the audio signal back through the headphones")); + // Test meta data + testApplication = "Multimedia - Play Radio With Interruptions"; + testBinary = "radio"; + testGoal = "Verify that radio play can be interrupted by system notifications."; + testPreconditions = "1. Audible system notifications should be enabled for this test.
2. This test requires radio reception and headphones to be connected to device."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Locate a strong radio station signal by scanning upwards | | + | While on a strong and audible radio signal, evoke a system notification on device (eg: incoming SMS, alarm notification) | Verify that after the system notification has been delivered, the radio reverts to outputting the audio signal back through the headphones | + ")); }, - basic_radio_controls: function() + radio_volume_control: function() { - prompt(twiki("Launch the radio application -Locate a strong radio station signal by scanning upwards -While on a strong and audible radio signal, move volume slider to the right -Verify that the audio volume of the radio station is amplified -Move volume slider to the left -Verify that the audio volume is lowered -Move the volume slider all the way to the left -Verify that the sound is now completely muted")); + // Test meta data + testApplication = "Multimedia - Radio Volume Control"; + testBinary = "radio"; + testGoal = "Verify that the radio volume can be controlled."; + testPreconditions = "1. This test requires radio reception and headphones to be connected to device."; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Locate a strong radio station signal by scanning upwards | | + | While on a strong and audible radio signal, move volume slider to the right | Verify that the audio volume of the radio station is amplified | + | Move volume slider to the left | Verify that the audio volume is lowered | + | Move the volume slider all the way to the left | Verify that the sound is now completely muted | + ")); }, take_a_photo: function() { - prompt(twiki("Launch camera application - If device has lens cover, make sure it is open - Select Image tab to put camera in still mode - Verify the intended scene is reproduced in the preview/viewfinder - Select Capture Photo - If applicable, verify that flash has triggered - Verify that image is shown on screen for preview - Verify that a new file is in the Images folder and accessabble with the image viewer - Select given image and Verify that it is a true representation of the intended sceen - Verify the image has no unintended artifacts and noise and is properly formatted")); + // Test meta data + testApplication = "Multimedia - Photo Camera"; + testBinary = "camera"; + testGoal = "Verify that a photo can be made with the camera."; + testPreconditions = ""; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | If device has lens cover, make sure it is open | | + | Select Image tab to put camera in still mode | Verify the intended scene is reproduced in the preview/viewfinder | + | Select Capture Photo | If applicable, verify that flash has triggered | + | | Verify that image is shown on screen for preview | + | | Verify that a new file is in the Images folder and accessabble with the image viewer | + | Select given image | Verify that it is a true representation of the intended sceen | + | | Verify the image has no unintended artifacts and noise and is properly formatted | + ")); }, record_an_audio_file: function() @@ -348,23 +439,34 @@ Verify that the sound is now completely muted")); // Note: On Maemo5, accepting the default for Input Device, Audio Codec, File Container and Sample Rate will produce a valid audio file. // Note: Selecting the alternative selection, if available, works as well. - prompt(twiki("Open audiorecorder application - Select Input Device - Select Audio Codec - Select File Container - Select Sample Rate - Select Quality and Bitrate - Select Output... and select location and name of output file - Select Record - Verify that [Record] button has changed in to [Stop] - Verify that Duration is counting seconds - Verify that Recording is displayed - Select Stop - Verify that Duration is now 0 - Select Output File in file browser - Verify that an audio file has been generated - Play output file in media player - Verify that audible audio is recorded in file")); + // Test meta data + testApplication = "Multimedia - Recording Audio"; + testBinary = "audiorecorder"; + testGoal = "Verify that audio can be recorded."; + testPreconditions = ""; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Input Device | | + | Select Audio Codec | | + | Select File Container | | + | Select Sample Rate | | + | Select Quality and Bitrate | | + | Select Output... and select location and name of output file | | + | Select Record | Verify that [Record] button has changed in to [Stop] | + | | Verify that Duration is counting seconds | + | | Verify that Recording is displayed | + | Select Stop | Verify that Duration is now 0 | + | Select Output File in file browser | Verify that an audio file has been generated | + | Play output file in media player | Verify that audible audio is recorded in file | + ")); }, pause_recording_an_audio_file: function() @@ -372,62 +474,75 @@ pause_recording_an_audio_file: function() // Note: On Maemo5, accepting the default for Input Device, Audio Codec, File Container and Sample Rate will produce a valid audio file. // Note: Selecting the alternative selection, if available, works as well. - prompt(twiki("Open audiorecorder application - Select Input Device - Select Audio Codec - Select File Container - Select Sample Rate - Select Quality and Bitrate - Select Output... and select location and name of output file - Select Record - Verify that [Record] button has changed in to [Stop] - Verify that Duration is counting seconds - Verify that Recording is displayed - Select Pause - Verify that instead of Duration, Paused is displayed - Select Resume - Verify that the counter has resumed the seconds count from where it was previously paused. - After a arbitrary time, Stop the recording. - Select Output File in file browser - Verify that an audio file has been generated - Play output file in media player - Verify that audible audio is recorded in file and that audio is only recorded for period that Pause was not selected - Verify there is no audible artifact that separates the two or more recording periods, that is that the joint is seamless")); + // Test meta data + testApplication = "Multimedia - Pause Recording Audio"; + testBinary = "audiorecorder"; + testGoal = "Verify that audio recordings can be paused."; + testPreconditions = ""; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select Input Device | | + | Select Audio Codec | | + | Select File Container | | + | Select Sample Rate | | + | Select Quality and Bitrate | | + | Select Output... and select location and name of output file | | + | Select Record | Verify that [Record] button has changed in to [Stop] | + | | Verify that Duration is counting seconds | + | | Verify that Recording is displayed | + | Select Pause | Verify that instead of Duration, Paused is displayed | + | Select Resume | Verify that the counter has resumed the seconds count from where it was previously paused. | + | After a arbitrary time, Stop the recording. | | + | Select Output File in file browser | Verify that an audio file has been generated | + | Play output file in media player | Verify that audible audio is recorded in file and that audio is only recorded for period that Pause was not selected | + | | Verify there is no audible artifact that separates the two or more recording periods, that is that the joint is seamless | + ")); }, play_a_slideshow: function() { - prompt(twiki("Launch the slideshow application -Select [Open] Icon -Select Directory from the list -Navigate to desired directory -Select desired directory containing pictures -Select [Play] -Verify that the slideshow starts -Select [Pause] -Verify that slideshow stops on given image -Select [Play] again -Verify that slideshow resumes -Select [Next File] -Verify that slideshow jumps to next image in directory -Select [Previous File] -Verify that slideshow jumps to previous image in directory -Select [Stop] -Verify that slideshow has stopped -Select [Open] Icon -Select Playlist from the list -Select [Play] -Verify that slideshow starts -Select [Pause] -Verify that slideshow stops on given image -Select [Play] again -Verify that slideshow resumes -Select [Next File] -Verify that slideshow jumps to next image in directory -Select [Previous File] -Verify that slideshow jumps to previous image in directory -Select [Stop] -Verify that slideshow has stopped")); - } + // Test meta data + testApplication = "Multimedia - Play Slideshow"; + testBinary = "slideshow"; + testGoal = "Verify that a slideshow can be played."; + testPreconditions = ""; + testGroups = "BAT"; + + // Test steps + prompt(twiki("---+++ " + testApplication + "

+ *Goal:* " + testGoal + "
+ *Pre-Requisites:* " + testPreconditions + "
+ *Tested Binary:* " + testBinary + "
+ + | *Step* | *Verification* | + | Launch " + testBinary + " | App launches normally | + | Select [Open] Icon | | + | Select Directory from the list | | + | Navigate to desired directory | | + | Select desired directory containing pictures | | + | Select [Play] | Verify that the slideshow starts | + | Select [Pause] | Verify that slideshow stops on given image | + | Select [Play] again | Verify that slideshow resumes | + | Select [Next File] | Verify that slideshow jumps to next image in directory | + | Select [Previous File] | Verify that slideshow jumps to previous image in directory | + | Select [Stop] | Verify that slideshow has stopped | + | Select [Open] Icon | | + | Select Playlist from the list | | + | Select [Play] | Verify that slideshow starts | + | Select [Pause] | Verify that slideshow stops on given image | + | Select [Play] again | Verify that slideshow resumes | + | Select [Next File] | Verify that slideshow jumps to next image in directory | + | Select [Previous File] | Verify that slideshow jumps to previous image in directory | + | Select [Stop] | Verify that slideshow has stopped | + ")); + }, } -- cgit v1.2.3 From 7838e667809bb27d1ccdcca216f9ac297d2b54af Mon Sep 17 00:00:00 2001 From: Daron Andrew Edie Date: Wed, 10 Aug 2011 10:36:56 +1000 Subject: updated the "new and approved" test script with qmlnotes to enable testing on symbian --- .../sys_declarative-sfw-notes.qtt | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/tests/systemtests/sys_declarative-sfw-notes/sys_declarative-sfw-notes.qtt b/tests/systemtests/sys_declarative-sfw-notes/sys_declarative-sfw-notes.qtt index a27b463bc5..e71512549c 100644 --- a/tests/systemtests/sys_declarative-sfw-notes/sys_declarative-sfw-notes.qtt +++ b/tests/systemtests/sys_declarative-sfw-notes/sys_declarative-sfw-notes.qtt @@ -47,9 +47,9 @@ testcase = { { // Test meta data testApplication = "SFW - Add Note With Date"; - testBinary = "declarative-sfw-notes"; + testBinary = "qmlnotes"; testGoal = "Verify that "; - testPreconditions = "notes manager service must be registered: eg run *servicefw add xmldata/notesmanagerservice.xml*"; + testPreconditions = "Nil."; testGroups = "BAT"; // Test steps @@ -70,9 +70,9 @@ testcase = { { // Test meta data testApplication = "SFW - Add Note Without Date"; - testBinary = "declarative-sfw-notes"; + testBinary = "qmlnotes"; testGoal = "Verify that a note entered without a date gets the current date appended to it"; - testPreconditions = "notes manager service must be registered: eg run *servicefw add xmldata/notesmanagerservice.xml*"; + testPreconditions = "Nil."; testGroups = "BAT"; // Test steps @@ -93,9 +93,9 @@ testcase = { { // Test meta data testApplication = "SFW - Browse Notes"; - testBinary = "declarative-sfw-notes"; + testBinary = "qmlnotes"; testGoal = "Verify that the user can browse through all notes in the system."; - testPreconditions = "notes manager service must be registered: eg run *servicefw add xmldata/notesmanagerservice.xml*"; + testPreconditions = "Nil."; testGroups = "BAT"; // Test steps @@ -115,10 +115,9 @@ testcase = { { // Test meta data testApplication = "SFW - Find Note"; - testBinary = "declarative-sfw-notes"; + testBinary = "qmlnotes"; testGoal = "Verify that notes can be found using the search function."; - testPreconditions = "1. notes manager service must be registered: eg run *servicefw add xmldata/notesmanagerservice.xml*
- 1. at least three notes have been entered in the system."; + testPreconditions = "1. at least three notes have been entered in the system."; testGroups = "BAT"; // Test steps @@ -139,10 +138,9 @@ testcase = { { // Test meta data testApplication = "SFW - Delete Note"; - testBinary = "declarative-sfw-notes"; + testBinary = "qmlnotes"; testGoal = "Verify that notes can be deleted."; - testPreconditions = "1. notes manager service must be registered: eg run *servicefw add xmldata/notesmanagerservice.xml*
- 1. at least three notes have been entered in the system."; + testPreconditions = "1. at least three notes have been entered in the system."; testGroups = "BAT"; // Test steps -- cgit v1.2.3