22

Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Designing Hardware-independent Testing Laboratory API

Paweª Wieczorek

August 22, 2019

Samsung R&D Institute Poland

Page 2: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Outline

Motivation

Testing laboratory layers

Case study

Summary

1/17

Page 3: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Motivation

Page 4: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Use cases

Automated testing

New

software

Allocate

resources

Perform

tests

Release

resources

Return

results

Direct access (hacking)

Issue

investigation

DUT

acquisitionInteraction

DUT

releaseIssue solved

2/17

Page 5: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Abstractions (https://elinux.org/Test_Standards)

TM Test Manager: Actions initiation

TSTest Scheduler: Resource

allocation, scheduling

DUT-C

DUT Control: Controlling power,

providing network, ensuring

communication, grabbing logs

DUT Device Under Test

3/17

Page 6: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Common laboratory structure

DUT

Control

Test

scheduler

Test

manager

4/17

Page 7: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Decoupled laboratory structure

Test

manager

Test

scheduler

DUT

Control

DUT

5/17

Page 8: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Devices

6/17

Page 9: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

SD-MUX

https://wiki.tizen.org/SD_MUX

7/17

Page 10: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

SDWire

https://wiki.tizen.org/SDWire

8/17

Page 11: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

MuxPi

https://wiki.tizen.org/MuxPi

9/17

Page 12: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Testing laboratory layers

Page 13: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Challenges

Knowledge

Which actions are necessary? Where can it be performed? How to do it?

Responsibilities

Who performs given action?

Sharing

Who can use DUT? How can DUT be used?

10/17

Page 14: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Implementation

Test Manager (minimal)

� initiate actions

� list (or cancel) currently performed actions

Test scheduler (generic)

� list available resources, request speci�c ones

� acquire assigned resources (then prolong, �nally release)

DUT Control (tricky)

� boot (and login)

� execute commands

� copy �les 11/17

Page 15: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Case study

Page 16: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Test Manager

Strengths

� Requires only preparing test plan

� Test plans can be reused among various projects

Weaknesses

� Keeping compliance

� Catching up with others (e.g. LAVA, SQUAD)

12/17

Page 17: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Test Scheduler

Strengths

� Users treated equally

� Resource type-agnostic

Weaknesses

� Requires additional agent

� Capabilities declared up front

13/17

Page 18: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

DUT Control

Strengths

� Only some knowledge required

� Uni�cation possibility

Weaknesses

� Hard initial setup

� Often unique for a given testing laboratory

14/17

Page 19: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Summary

Page 20: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Outcome

� Unable to demo without speci�c hardware

� Risky large scale deployments

� Responsibilities division allows easier onboarding

15/17

Page 21: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Conclusion

� User-centric approach resulted in smaller building blocks

� Smaller blocks could be easier swapped or used independently

� Improvement needs more reuse instead of rewrite

https://github.com/SamsungSLAV

16/17

Page 22: Designing Hardware-independent Testing Laboratory API · Designing Hardware-independent estingT Laboratory API Paweª Wieczorek August 22, 2019 Samsung R&D Institute Poland. Outline

Thank you!

Paweª [email protected]

17/17