diff options
Diffstat (limited to 'units')
| -rw-r--r-- | units/cpu/test-plan.pxu | 14 | ||||
| -rw-r--r-- | units/dock/jobs.pxu | 2 | ||||
| -rw-r--r-- | units/ethernet/jobs.pxu | 1 | ||||
| -rw-r--r-- | units/fingerprint/jobs.pxu | 148 | ||||
| -rw-r--r-- | units/fingerprint/manifest.pxu | 4 | ||||
| -rw-r--r-- | units/fingerprint/test-plan.pxu | 20 | ||||
| -rw-r--r-- | units/mediacard/jobs.pxu | 2 | ||||
| -rw-r--r-- | units/networking/jobs.pxu | 4 | ||||
| -rw-r--r-- | units/networking/test-plan.pxu | 1 |
9 files changed, 166 insertions, 30 deletions
diff --git a/units/cpu/test-plan.pxu b/units/cpu/test-plan.pxu index 365531c..e5313f1 100644 --- a/units/cpu/test-plan.pxu +++ b/units/cpu/test-plan.pxu @@ -76,3 +76,17 @@ include: cpu/arm_vfp_support_.* cpu/cstates cpu/cstates_results.log + +id: cpu-server +unit: test plan +_name: CPU Tests (Server) +_description: CPU Tests (Server) +include: + cpu/clocktest certification-status=blocker + cpu/frequency_governors certification-status=blocker + cpu/maxfreq_test certification-status=blocker + cpu/maxfreq_test-log-attach certification-status=non-blocker + cpu/topology certification-status=blocker + cpu/arm_vfp_support_.* certification-status=non-blocker + cpu/cstates certification-status=non-blocker + cpu/cstates_results.log certification-status=non-blocker diff --git a/units/dock/jobs.pxu b/units/dock/jobs.pxu index c457102..49876d8 100644 --- a/units/dock/jobs.pxu +++ b/units/dock/jobs.pxu @@ -2294,7 +2294,7 @@ id: dock/mac-address-passthrough category_id: dock plugin: shell user: root -command: mac-passthrough.py +command: mac_passthrough.py _description: Check dock MAC address pass-through function, please make sure following items before running this test: 1. Pass-through mac address is flashed in BIOS 2. MAC address pass-through is enabled in BIOS settings diff --git a/units/ethernet/jobs.pxu b/units/ethernet/jobs.pxu index bd7f273..6a48955 100644 --- a/units/ethernet/jobs.pxu +++ b/units/ethernet/jobs.pxu @@ -176,6 +176,7 @@ command: category_id: com.canonical.plainbox::ethernet estimated_duration: 4.0 flags: preserve-locale also-after-suspend +user: root unit: template template-resource: device diff --git a/units/fingerprint/jobs.pxu b/units/fingerprint/jobs.pxu index c7951b0..f603f72 100644 --- a/units/fingerprint/jobs.pxu +++ b/units/fingerprint/jobs.pxu @@ -1,32 +1,126 @@ -plugin: manual +plugin: shell category_id: com.canonical.plainbox::fingerprint -id: fingerprint/login -_description: - PURPOSE: - This test will verify that a fingerprint reader will work properly for logging into your system. This test case assumes that there's a testing account from which test cases are run and a personal account that the tester uses to verify the fingerprint reader - STEPS: - 1. Click on the User indicator on the left side of the panel (your user name). - 2. Select "Switch User Account" - 3. On the LightDM screen select your username. - 4. Use the fingerprint reader to login. - 5. Click on the user switcher applet. - 6. Select the testing account to continue running tests. - VERIFICATION: - Did the authentication procedure work correctly? +id: fingerprint/detect +user: root +command: fprintd-list ${SUDO_UID:-$NORMAL_USER} +estimated_duration: 1.0 +_summary: Check if at least one fingerprint reader is detected +imports: from com.canonical.plainbox import manifest +requires: manifest.has_fingerprint_reader == 'True' -plugin: manual +plugin: user-interact +category_id: com.canonical.plainbox::fingerprint +id: fingerprint/enroll +depends: fingerprint/detect +user: root +command: + set -e + echo 'Removing existing signatures...' + fprintd-delete ${SUDO_UID:-$NORMAL_USER} > /dev/null + sleep 3 + fprintd-enroll ${SUDO_UID:-$NORMAL_USER} +estimated_duration: 20.0 +_summary: Enroll a fingerprint +_purpose: + Enroll the user's right index finger into the database +_steps: + 1. Press Enter + 2. Swipe your right index finger five times (wait 3s for the Enrolling message) +_verification: + The verification of this test is automated. +imports: from com.canonical.plainbox import manifest +requires: + manifest.has_fingerprint_reader == 'True' + package.name == 'fprintd' + +plugin: user-interact +category_id: com.canonical.plainbox::fingerprint +id: fingerprint/verify-no-match +depends: fingerprint/enroll +user: root +command: + sleep 2 + fprintd-verify ${SUDO_UID:-$NORMAL_USER} | tee /dev/stderr | grep -o verify-no-match +estimated_duration: 20.0 +_summary: Fingerprint negative match +_purpose: + The verification must not match when using a wrong finger +_steps: + 1. Press Enter + 2. Swipe an unenrolled finger on the reader +_verification: + The verification of this test is automated. +imports: from com.canonical.plainbox import manifest +requires: + manifest.has_fingerprint_reader == 'True' + package.name == 'fprintd' + +plugin: user-interact +category_id: com.canonical.plainbox::fingerprint +id: fingerprint/verify-match +depends: fingerprint/verify-no-match +user: root +command: + sleep 2 + for i in {1..3} + do + fprintd-verify ${SUDO_UID:-$NORMAL_USER} | tee /dev/stderr | grep -o verify-match && break || sleep 3 + [[ $i -eq 3 ]] && exit 1 + echo "Attempts left: $((3-$i))" + done +estimated_duration: 20.0 +_summary: Fingerprint positive match +_purpose: + The verification must match when using the enrolled finger +_steps: + 1. Press Enter + 2. Swipe your enrolled finger on the reader (3 attempts max) +_verification: + The verification of this test is automated. +imports: from com.canonical.plainbox import manifest +requires: + manifest.has_fingerprint_reader == 'True' + package.name == 'fprintd' + +plugin: user-interact-verify category_id: com.canonical.plainbox::fingerprint id: fingerprint/unlock -_description: - PURPOSE: - This test will verify that a fingerprint reader can be used to unlock a locked system. - STEPS: - 1. Click on the Session indicator (Cog icon on the Left side of the panel) . - 2. Select 'Lock screen'. - 3. Press any key or move the mouse. - 4. A window should appear that provides the ability to unlock either typing your password or using fingerprint authentication. - 5. Use the fingerprint reader to unlock. - 6. Your screen should be unlocked. - VERIFICATION: - Did the authentication procedure work correctly? +depends: fingerprint/verify-match +user: root +command: + python3 <<EOF + from evdev import UInput, ecodes as e + ui = UInput() + ui.write(e.EV_KEY, e.KEY_LEFTMETA, 1) + ui.write(e.EV_KEY, e.KEY_L, 1) + ui.write(e.EV_KEY, e.KEY_LEFTMETA, 0) + ui.write(e.EV_KEY, e.KEY_L, 0) + ui.syn() + ui.close() + EOF +_summary: Fingerprint unlock screen +_purpose: + This test will verify that a fingerprint reader can be used to unlock a locked system. +_steps: + 1. Press Enter to lock the screen + 2. Press any key or move the mouse. + 3. A window should appear that provides the ability to unlock either typing your password or using fingerprint authentication. + 4. Use the fingerprint reader to unlock. + 5. Your screen should be unlocked. +_verification: + Did the authentication procedure work correctly? +imports: from com.canonical.plainbox import manifest +requires: + manifest.has_fingerprint_reader == 'True' + package.name == 'fprintd' +plugin: shell +category_id: com.canonical.plainbox::fingerprint +id: fingerprint/delete +after: fingerprint/unlock +user: root +command: fprintd-delete ${SUDO_UID:-$NORMAL_USER} +estimated_duration: 1.0 +_summary: Remove existing fingerprint signatures +imports: from com.canonical.plainbox import manifest +requires: manifest.has_fingerprint_reader == 'True' diff --git a/units/fingerprint/manifest.pxu b/units/fingerprint/manifest.pxu new file mode 100644 index 0000000..13866b8 --- /dev/null +++ b/units/fingerprint/manifest.pxu @@ -0,0 +1,4 @@ +unit: manifest entry +id: has_fingerprint_reader +_name: A fingerprint reader +value-type: bool diff --git a/units/fingerprint/test-plan.pxu b/units/fingerprint/test-plan.pxu new file mode 100644 index 0000000..42ebd52 --- /dev/null +++ b/units/fingerprint/test-plan.pxu @@ -0,0 +1,20 @@ +id: fingerprint-full +unit: test plan +_name: QA tests for fingerprint reader +_description: Fingerprint tests +estimated_duration: 1m +include: +nested_part: + fingerprint-manual + +id: fingerprint-manual +unit: test plan +_name: Manual fingerprint tests +_description: Manual tests for fingerprint reader +include: + fingerprint/detect certification-status=non-blocker + fingerprint/enroll certification-status=non-blocker + fingerprint/verify-no-match certification-status=non-blocker + fingerprint/verify-match certification-status=non-blocker + fingerprint/unlock certification-status=non-blocker + fingerprint/delete certification-status=non-blocker diff --git a/units/mediacard/jobs.pxu b/units/mediacard/jobs.pxu index f2b3a64..1d27f48 100644 --- a/units/mediacard/jobs.pxu +++ b/units/mediacard/jobs.pxu @@ -162,7 +162,7 @@ id: mediacard/sd-preinserted-server estimated_duration: 30.0 user: root flags: preserve-cwd -command: removable_storage_test -s 268400000 --memorycard -l sdio usb scsi && removable_storage_test --memorycard sdio usb scsi +command: removable_storage_test -s 268400000 --memorycard -l sdio usb && removable_storage_test --memorycard sdio usb requires: package.name == 'udisks2' or snap.name == 'udisks2' _summary: Automated test of SD Card reading & writing (udisk2) for servers diff --git a/units/networking/jobs.pxu b/units/networking/jobs.pxu index c5f5c9f..b697b84 100644 --- a/units/networking/jobs.pxu +++ b/units/networking/jobs.pxu @@ -80,8 +80,10 @@ _description: Try to enable a remote printer on the network and print a test pag plugin: shell category_id: com.canonical.plainbox::networking +template-engine: jinja2 id: networking/predictable_names command: network_predictable_names _summary: Verify that all network interfaces have predictable names. _description: Verify that all network interfaces have predictable names. - +requires: + {% if __on_ubuntucore__ %}lsb.release >= '20'{% else %}lsb.release >= '18'{% endif %} diff --git a/units/networking/test-plan.pxu b/units/networking/test-plan.pxu index 1abee61..f11d215 100644 --- a/units/networking/test-plan.pxu +++ b/units/networking/test-plan.pxu @@ -61,6 +61,7 @@ _description: Automated networking tests for devices include: ipv6_detect ipv6_link_local_address_.* + networking/predictable_names bootstrap_include: device |
