우리 모두 알고 있듯이 소프트웨어 서비스와 구성 요소 간의 상호 작용은 주로 수많은 API 인터페이스에 의존합니다.
Huawei Cloud의 300개 이상의 상용 클라우드 서비스를 예로 들어 보겠습니다. 각 서비스에는 평균 500개 이상의 인터페이스가 포함되어 있으며, 총 인터페이스 수는 100,000개 이상에 달합니다. 인터페이스 호출 컨텍스트 비즈니스 시나리오는 상상할 수 없을 정도로 복잡합니다.
API 테스트 시나리오가 누락 없이, 또는 라이브 네트워크에서 심각한 문제를 일으키지 않고 최대한 완벽하도록 보장하는 방법은 무엇입니까? 이는 현재 사람들이 직면하고 있는 고전적인 문제이며, 일반적인 병목 현상은 다음과 같습니다.
- 현재 인터페이스 테스트 설계는 인력 경험에 의존하고 있으며 테스트 데이터 구성 방법이 단일하므로 기존 네트워크의 실제 애플리케이션 데이터 배포 시나리오를 반영하기 어렵습니다.
- 수만 또는 심지어 수십만 개의 작업 경로를 구성할 수 있는 수천 개의 API 인터페이스에 직면하여 E2E 시나리오 테스트 및 오케스트레이션 작업량은 엄청납니다.
- 기존 API 인터페이스 테스트 생성 도구는 기본적으로 코드 커버리지 목표 지침을 기반으로 한 Fuzz 테스트 + SBST를 사용하거나, 인터페이스 비즈니스 컨텍스트를 인식하지 못합니다. 효율성이 상대적으로 낮고 비효율적입니다.
그렇다면 Huawei Cloud는 이러한 문제를 어떻게 해결합니까?
▶Huawei Cloud ATGen: API 인터페이스 컨텍스트를 인식하고 API 전체 시나리오 테스트를 독립적으로 생성하며 인간-컴퓨터 상호 작용 모델을 변경합니다
ATGen(APITestGenerator)은 코드 한 줄을 작성하지 않고도 애플리케이션 API 시나리오 수준 테스트의 완전 자동 설계, 생성, 실행 및 판단을 실현하는 컨텍스트 인식 API 시나리오 수준 제로 코드 독립 테스트 생성 서비스입니다.
기존 테스트 설계 및 실행 상호 작용 모델에서는 설계 문서에 대한 수동적 이해, 테스트 계획 정리, 테스트 자동화 개발이 필요합니다. 이를 위해서는 참가자가 제품 또는 서비스 비즈니스 및 인터페이스 문서에 익숙해야 하며 테스트 기술, 테스트에 능숙해야 합니다. 자동화 프레임워크 및 테스트 자동화 코드 작성.
오늘날, 독립적으로 설계, 생성, 실행 및 판단되는 AI 알고리즘의 지원으로 API 시나리오 수준 테스트의 인간-컴퓨터 상호 작용 모델은 엄청난 변화를 겪었습니다.
![API全场景零码测试机器人,华为云发布ATGen in CodeArts TestPlan](https://img.php.cn/upload/article/000/465/014/168602830932658.jpg)
- ATGen 지능형 알고리즘이 지원하는 인간-컴퓨터 상호 작용 모드
테스트 과정에서 기계는 문서와 데이터를 독립적으로 구문 분석하고 API 시나리오 수준 작업 종속성 ODG(OperationDependencyGraph) 그래프를 자동으로 생성합니다. 테스터는 적절한 수정만 하면 되며 기계는 ODG 그래프 실행을 독립적으로 탐색하고 탐색할 수 있습니다. , 결과 판단과 보고서 생성을 동시에 완료하면 테스터는 카테고리별로 결과를 일괄 확인하기만 하면 됩니다.
![API全场景零码测试机器人,华为云发布ATGen in CodeArts TestPlan](https://img.php.cn/upload/article/000/465/014/168602830911234.jpg)
▶Huawei Cloud ATGen: 강조된 기술 및 비즈니스 가치
Huawei Cloud ATGen은 순방향 API 인터페이스 정의 문서를 기반으로 하며 API 테스트 컨텍스트 작업 종속성 그래프(ODG)를 자동으로 마이닝하고 ODG를 탐색 및 탐색하여 API 테스트 시퀀스를 독립적으로 생성하고 실시간으로 API 테스트 요청을 구성 및 발행하며 API 테스트 응답 결과를 동적으로 수정하고 ODG 그래프를 통해 다음 세대를 최적화합니다.
![API全场景零码测试机器人,华为云发布ATGen in CodeArts TestPlan](https://img.php.cn/upload/article/000/465/014/168602830933614.png)
Huawei Cloud ATGen의 6가지 주요 기능:
- Yaml 문서 제로 코드의 Rest API 인터페이스 정의를 기반으로 완전 자동 지능형 테스트 생성을 지원합니다.
- Rest API 인터페이스 호출 컨텍스트 인식:인터페이스 정의 Yaml 문서를 구문 분석하고 API 인터페이스 간의 컨텍스트 매개변수 전송 종속성과 CRUD 추가, 삭제, 수정 및 종속성 확인을 마이닝하고 인터페이스 작업 시퀀스 종속성 그래프 ODG를 생성합니다.
- ODG의 자율 탐색, 순회 및 수정:ODG를 탐색 및 순회하여 일괄적으로 테스트 시퀀스를 생성하고 자동으로 실행하여 응답 피드백을 기반으로 ODG 다이어그램을 동적으로 수정합니다.
13가지 인터페이스 테스트 데이터 생성 방법:
- 인터페이스 컨텍스트 자동 매개변수 전달, 사전 값 재사용, 열거형 값, 예제 값, 예제 돌연변이 값, 경계 값, 중간 값, 무작위 값 등 13가지 테스트 데이터 생성 방법을 지원합니다.
테스트 결정 포인트를 생성하는 자동 마이닝:
- 인터페이스 정의 및 상태 코드를 기반으로 명시적인 테스트 결정 포인트를 생성합니다.테스트 결과 클러스터링 및 일괄 효율적인 확인:
비즈니스 반환 코드, 유사한 하위 시퀀스 및 매개변수 생성 유형을 기반으로 테스트 결과의 계층적 클러스터링을 지원하여 테스터가 범주별로 일괄 실패를 더 쉽게 확인하고 한 번의 클릭으로 주문할 수 있습니다.
- *구체적인 기술 세부정보는 ICSE 및 ASE에 게시된 상위 컨퍼런스 논문을 참조하세요[1, 2].
Huawei Cloud ATGen 비즈니스 가치 및 애플리케이션 전망:
- 인터페이스 및 기능적 품질 보호 네트워크를 신속하게 구축:새로 설립된 제품 서비스 팀 또는 정규 테스터가 없는 모든 기능을 갖춘 팀의 경우 참여가 거의 또는 전혀 없는 제로 코드 완전 자동 인터페이스 전체 시나리오 수준 테스트를 수행할 수 있습니다. 인터페이스 수준 및 기능 시나리오 수준 테스트를 위한 기본 품질 보호 네트워크를 신속하게 구축합니다.
- 저렴한 비용, 높은 적용 범위:정규 테스터, 테스트 전문가 및 높은 성숙도로 구성된 테스트 팀의 경우 테스트 설계 효율성을 크게 향상할 수 있으며 낮은 비용으로 더 높은 테스트 시나리오 적용 범위 및 결함 차단율을 달성할 수 있습니다.
- 조립 라인 품질 액세스 제어 강화:기존 연기 테스트 액세스 제어를 강화하고 비즈니스 로직의 심각한 결함을 추가로 차단하기 위해 기존 조립 라인과 통합할 수 있습니다.
언코딩 인터페이스 지향 전체 시나리오 및 전체 속성 테스트:
- 정상 API 시나리오 테스트를 기반으로 비정상적인 시나리오(신뢰성 테스트) 및 동시 시나리오(성능 압박 모델)의 완전 자동화 생성을 실현하여 기존 인터페이스 퍼즈 테스트를 완전히 대체할 수 있습니다. 모든 시나리오에서 인터페이스의 제로 코드 테스트를 실현합니다.
Huawei Cloud ATGen은 Huawei 내에서 매일 30개 이상의 제품 및 서비스 애플리케이션을 대규모로 배포했으며 비즈니스 애플리케이션 효과를 3차원으로 측정합니다
:
생성 효율성:
- 인터페이스 요청의 성공적인 통과율, 성공적인 요청의 가장 긴 시퀀스 길이 및 길이 분포, 비즈니스에서 채택하고 기준으로 삼은 사용 사례 수 등을 포함합니다.결함 감지 수:
결함 차단 기능, 즉 제품 및 서비스 결함을 감지하는 문제 수 및 오경보율
- 커버리지:
화이트-그레이 및 블랙박스 커버리지, 즉 코드 커버리지, 인터페이스 및 매개변수 조합 커버리지, 비즈니스 시나리오 커버리지 등을 포함합니다.
Huawei 내 세 가지 일반적인 비즈니스 적용 시나리오 사례
비즈니스 적용 시나리오 1
- 제품 형태: 클라우드 기반 스토리지 관리 및 제어 서비스 제품, 노스바운드 서비스 지향, 임베디드 스토리지 장치의 사우스바운드 제어
테스트 팀 규모: 50명 이상
노스바운드 Restful 인터페이스의 총 수: 2300+
적용 전 현황 : 팀이 새로 구성되어 인터페이스 및 기능 테스트 자동화 보호 네트워크가 부족합니다.
애플리케이션 모드: 인터페이스 테스트 및 기능 테스트 보호 네트워크 테스트 사례를 처음부터 빠르게 구축
애플리케이션 효과: 3가지 주요 결함 범주를 포함하여 총 350개 이상의 인터페이스 결함이 발견되었습니다. API 인터페이스 수준 요청의 효율성은 80% 이상에 도달할 수 있으며 오탐률은 10%입니다.
![API全场景零码测试机器人,华为云发布ATGen in CodeArts TestPlan](https://img.php.cn/upload/article/000/465/014/168602830929652.png)
비즈니스 적용 시나리오 2
- 제품 형태: 운영자 및 기업 네트워크 보증, 지능형 운영 및 유지 관리 클라우드 서비스, 퍼블릭 클라우드/프라이빗 클라우드 구축
테스트 팀 규모: 50명
노스바운드 Restful 인터페이스의 총 수: 10,000+
적용 전 현황: 8000개 이상의 인터페이스 및 기능 테스트 케이스
애플리케이션 모드: 커버리지 향상 및 기존 테스트 케이스 보완
적용 효과: 시나리오 테스트 범위가 30% 증가했으며, 30개 이상의 심층적인 비즈니스 로직 문제가 새로 발견되었습니다. 예는 다음과 같습니다.
![API全场景零码测试机器人,华为云发布ATGen in CodeArts TestPlan](https://img.php.cn/upload/article/000/465/014/168602830935706.jpg)
비즈니스 적용 시나리오 3
테스트 팀 규모: 모든 기능을 갖춘 팀, 정규 테스터 없음
총 Restful 인터페이스 수: 1300+
적용 전 현황: 10,000개 이상의 인터페이스 테스트 케이스
애플리케이션 모드: ATGen을 도구 서비스 알파 및 베타 환경 파이프라인에 통합합니다. 빌드가 완료되고 회귀 테스트 작업이 완료된 후 생성 작업이 자동으로 트리거되어 알파 및 베타 액세스 제어 강화로 실패한 인터페이스가 있는지 감지합니다.
응용 효과: 60개 이상의 인터페이스 결함이 추가로 발견되었으며 API 인터페이스 테스트 생성 효율성은 82%에 도달할 수 있습니다.
클라우드 제품 버전의 빠른 반복에 직면하여 애플리케이션 시나리오가 점점 풍부해지고 제품 기능이 점점 복잡해지고 있으며, 독립적으로 생성된 전체 ATGen의 품질을 보장하기 위해 사람의 테스트 경험에만 의존하는 것이 점점 더 어려워지고 있습니다. -시대의 요구에 부응하여 등장한 시나리오 기능 테스트 로봇은
저비용, 제로 코드, 높은 적용 범위, 낮은 위양성 API 전체 시나리오 테스트
를 실현하고 개발자에게 고품질을 지속적으로 제공할 수 있습니다. 서비스.
【1】“MOREST: 실행 피드백을 사용한 모델 기반 RESTful API 테스트”, ICSE ’22,
【2】“자동 RESTful API 테스트의 업계 실무”, ASE'22
자세한 내용은 @huaweicloud를 팔로우하세요
위 내용은 API 전체 시나리오 제로 코드 테스트 로봇인 Huawei Cloud, CodeArts TestPlan에서 ATGen 출시의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!