테스트 코드 자동화 - Cypress Studio
테스트 코드 작성 시간이 오래 걸리는 것과 코드를 짤 수 있어야 하는 것이 문제입니다. 이 두 가지 문제를 해결하는 방법이 바로 Cypress Studio 활용입니다. 크롬 Recorder와 같이 사용자의 마우스, 키보드 등의 액션을 기록하여 테스트 코드를 자동으로 만듭니다. 또한, 테스트 통과 여부를 위한 Assertion(단언)도 마우스 조작으로 기록하여 테스트 코드를 만듭니다.
https://fe-developers.kakaoent.com/2022/221222-cypress-studio-test-automation-low-code/
(http://www.duncannisbet.co.uk/test-automation-basics-levels-pyramids-quadrants
(https://dzone.com/articles/best-automation-testing-tools-for-2018
자동화(automation)의 기반은 제어이론(control theory)이다. 이 이론은 투입과 산출이 일방으로 진행되는 것이 아니라, 산출결과를 피드백(feedback)해서 투입수준을 조절하고 그에 따라 원하는 산출에 도달하는 시스템을 다룬다. 원하는 산출을 얻기 위해 사람이 투입을 정해서 부가하는 것이 아니라, 시스템이 스스로 투입을 조절하는 것이다.
새로운 품질 고려 사항
이 단계에서 기업은 더 많은 예측적 의사 결정을 프로세스에 통합하게 된다. 이런 의사 결정은 하나 이상의 AI 모델을 통해 실시된다. 확률적 의사결정은 기업에게 큰 혜택이 될 것이다. 그러나 확률적 의사결정의 도입은 품질 및 테스트 측면에서 기업에게 새로운 수준의 과제를 안겨준다. 품질 보증 방법, 테스트 척도를 설계하고 생성하는 방법의 전면적인 변화가 필요하다.
- 동일한 데이터, 여러 AI 시나리오
- 동일한 데이터, 여러 모델, 동일한 AI 시나리오
- 변형된 데이터, 여러 AI 시나리오
• 샘플링 : 데이터의 하위 집합이 활용된다(하위 집합을 필요에 따라 무작위로 생성할 수 있는 경우).
• 필터링 : 특정 유형의 행 또는 신호를 포함하거나 제외하도록 학습 데이터 집합이 설계된다.
• 추정 : 데이터 집합에서 사용 가능한 속성 하위 집합을 포함하도록 학습 데이터 집합이 설계된다.
• 집계 : 특정 속성 집합에 걸쳐 또는 일정 시간 동안 집계를 통해 학습 데이터 집합이 구축된다.
• 파생 : 문자열에서 정수, 정수에서 분류, 비닝(binning) 등 하나 이상의 속성 수준 변형을 통해 학습 데이터 집합이 구축된다.
- AI 데이지 체인
이 시나리오에서는 여러 AI 모델이 구축되어 디지털로 또는 인간 주도의 아날로그 방식을 통해 서로 연결된다. 예를 들어 사용자는 AI 모델의 출력을 사용해 결과를 판단할 수 있다. 사용자는 이 결과를 비즈니스 워크플로우 또는 두 번째 AI 모델에 입력하거나 첫 번째 AI 모델의 결과를 사용해 다음 출력을 판단할 수 있다. 이 시나리오에서 두 번째 AI 모델 결과의 품질은 첫 번째 AI 모델 결과의 품질에 따라 달라진다.
테스트 모범 사례
- 전사적 데이터 변형 지도
- 데이터 변형 의미 프로파일링
- AI 데이지 체인의 천장 및 바닥 제한
기업은 다운스트림 비즈니스 워크플로우에서 업스트림 AI 모델 출력 사용에 대한 천장 및 바닥 제한을 구현하는 AI 워크플로우 기능에 투자해야 한다. 또한 이런 제한은 구성 및 오버라이드가 가능해야 하며 업스트림 AI 모델의 소비자가 출력을 이해하고 분별력 있게 사용할 수 있도록 면밀히 모니터링해야 한다.
- AI 테스트 척도
(http://www.itworld.co.kr/news/107688
테스트하네스/자동화
1. 테스트하네스/자동화 : 자동화된 test 프로세스를 제공하고, test 실행의 case를 제공하며, test 결과를 자동으로 생성해주는 소트프웨어 테스트 자동화 Tool
2. 테스트 하네스 구현을 위한 자동화 툴
1) Test harness : drivers, stubs 테스트 일부를 실행하기 위한 환경 제공(Top-down, Bottom-up)
2) Test generators : Testcase Test case를생성하는 것을 자동화
3) Capture/Replay : 재귀 test 동적 test, 수행된 테스트를 재실행
4) Oracle/file comparators/assertionchecking : Test 결과 검증, test결과의 성공/실패 여부를 확인할 수 있음.
5) Coverage analyzer/ Instrumenter : Test경로의 case에 따른 규모측정
6) Tracers : 실행과정 실행과정의 log 자동화 관리
'02.SW' 카테고리의 다른 글
SW 테스트 - 회귀 테스트 (Regression Test) (0) | 2020.06.23 |
---|---|
프로젝트 관리 - 이해관리자관리 (0) | 2020.06.23 |
SW 테스트 - 결함 주입 기법 (0) | 2020.06.23 |
SW 품질 - ISO 9126 (0) | 2020.06.23 |
SW 아키텍처 - 평가 (0) | 2020.06.23 |