Some test cases are executed with secondary graphic card only

Bug #1425396 reported by Jerry Kao
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Checkbox Provider - Base
Fix Released
High
Po-Hsu Lin
Provider for Plainbox - Canonical Certification (Legacy)
Fix Released
High
Po-Hsu Lin

Bug Description

When running test with a hybrid graphics platform, plainbox request to switch graphic cards to test both iGPU and dGPU. The draft process is as following
1. graphics test for primary graphic card
2. switch to secondary graphic card (need to reboot system)
3. graphics test for secondary graphics card
4. other tests (including hibernate test)
5. monitor tests
6. suspend tests (including suspend_advanced, hybrid sleep)
7. after suspend tests (including display, resolution tests)
8. switch back primary graphics card (need to reboot system)
2013.com.canonical.certification::graphics/1_switch_card_.*
9. suspend for primary graphic card
2013.com.canonical.certification::suspend/1_suspend_after_switch_to_card_.*
10. display check for primary graphic card after susend
2013.com.canonical.certification::suspend/1_display_after_suspend.*

With this process, tests in steps 4, 5, 6, 7 are executed with secondary graphic card. Some of them are strong related to graphics e.g. suspend, hibernate, hybrid sleep, monitor, display, resolution tests. It does not make sense to test those critical test cases with secondary but not primary graphic card.

There are 2 possible solutions.
I. add 1 more switch graphics between step 3&4 and the other one after step 10
then the process will become
1. graphics test for primary graphic card
2. switch to secondary graphic card (need to reboot system)
3. graphics test for secondary graphics card
4. switch back to primary graphic card
5. other tests (including hibernate test)
6. monitor tests
7. suspend tests (including suspend_advanced, hybrid sleep)
8. after suspend tests (including display, resolution tests)
9. switch to secondary graphic card again (need to reboot system)
10. suspend for secondary graphic card
2013.com.canonical.certification::suspend/2_suspend_after_switch_to_card_.*
11. display check for primary graphic card after susend
2013.com.canonical.certification::suspend/2_display_after_suspend.*
12. switch back to primary graphic card again

II. finish all test cases with primary graphic card and then perform a test set for secondary graphic card
1. full test with primary graphic card
2. switch to secondary graphic card
3. test graphics, display, monitor, suspend, hibernate, hybrid sleep, after suspend test cases for secondary graphic card.
* may can be test with a specific graphics whitelist. (solution III.)

Related branches

Jerry Kao (jerry.kao)
description: updated
tags: added: ce-qa-concern
Changed in checkbox:
importance: Undecided → High
Revision history for this message
Jerry Kao (jerry.kao) wrote :
Revision history for this message
Jerry Kao (jerry.kao) wrote :
Jerry Kao (jerry.kao)
summary: - Some test cases are executed with secondary graphic card
+ Some test cases are executed with secondary graphic card only
Changed in checkbox:
assignee: nobody → Sylvain Pineau (sylvain-pineau)
status: New → In Progress
Revision history for this message
Pierre Equoy (pieq) wrote :

I introduced the generator discussed in lp:1425386 in the Stella Full Test Plan and run a test on a device with 2 graphic cards (Intel+AMD). It works pretty well but, as Jerry mentioned, the monitor/* tests are only run on the second graphic card and never on the first one.

@Sylvain, could it be possible to add a generator for the monitor/* tests to ensure all these tests are run on both graphic cards (if the device has more than 1 graphic card)?

We would then add this generator to the Desktop/Laptop full test plans.

Revision history for this message
Po-Hsu Lin (cypressyew) wrote :

@Pierre,
nice catch, from definition for external graphic ports in our 14.04 coverage guide:
"On systems with Hybrid graphics, monitor hotplugging needs to work for all
external graphics ports when system is in Performance mode. When the system
is in Power Saving mode, monitor hotplugging is not required to work on the
ports that are physically connected to the discrete GPU."

It seems that they're not only required to be tested with Performance mode, for Power-saving mode, we will need to test them as well.

And yes, I think it's possible to add a generator for monitor jobs.

Revision history for this message
Po-Hsu Lin (cypressyew) wrote :

@Sylvain,
sorry I didn't notice this bug has already been reported and you are working on it, I opened another one (bug 1430642) while working on bug 1425386 :P

Revision history for this message
Zygmunt Krynicki (zyga) wrote :

Sam, feel free to dupe this bug as it seems related to what you are working on right now.

Changed in checkbox:
assignee: Sylvain Pineau (sylvain-pineau) → Po-Hsu Lin (cypressyew)
Po-Hsu Lin (cypressyew)
affects: checkbox → plainbox-provider-checkbox
Changed in plainbox-provider-canonical-certification:
status: New → In Progress
importance: Undecided → High
assignee: nobody → Po-Hsu Lin (cypressyew)
milestone: none → 0.16
Changed in plainbox-provider-checkbox:
milestone: none → future
milestone: future → 0.20
Changed in plainbox-provider-canonical-certification:
status: In Progress → Fix Released
Changed in plainbox-provider-checkbox:
status: In Progress → Fix Released
Changed in plainbox-provider-canonical-certification:
milestone: 0.16 → none
Changed in plainbox-provider-checkbox:
milestone: 0.20 → none
Changed in plainbox-provider-canonical-certification:
status: Fix Released → Fix Committed
Changed in plainbox-provider-checkbox:
status: Fix Released → Fix Committed
Po-Hsu Lin (cypressyew)
Changed in plainbox-provider-canonical-certification:
milestone: none → 0.16.1
Changed in plainbox-provider-checkbox:
milestone: none → 0.20.1
Changed in plainbox-provider-canonical-certification:
status: Fix Committed → Fix Released
Changed in plainbox-provider-checkbox:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.