제퍼넷 로고

AI/ML을 소프트웨어 테스트에 적용하여 속도, 정확도 향상 

시간

작성자 : John P. Desmond (AI 트렌드 편집자)  

AI 이전에는 소프트웨어 테스트가 소프트웨어 개발 수명 주기의 중요한 단계였습니다. AI 이후에는 여전히 그렇습니다. 그러나 이제 AI가 테스트를 도울 수 있습니다.  

AI와 머신 러닝이 소프트웨어 테스팅에 적용되어 테스팅 프로세스를 보다 빠르고 정확하게 만드는 새로운 시대를 정의하고 있다고 의 최근 계정에 따르면 AZ 빅 미디어.  

저자는 소프트웨어 테스트에 적용된 AI의 이점을 다음과 같이 설명합니다.   

향상된 자동화 테스트. 품질 보증 엔지니어는 새 코드가 기존의 작동 중인 코드를 불안정하게 만들지 않도록 테스트를 수행하는 데 시간을 할애합니다. 더 많은 기능과 기능이 추가됨에 따라 더 많은 코드를 테스트해야 하므로 QA 엔지니어에게 부담이 될 수 있습니다. 수동 테스트는 비실용적입니다.   

테스트를 자동화하는 도구는 장기간에 걸쳐 테스트를 반복적으로 실행할 수 있습니다. 이러한 도구에 AI 기능을 추가하면 강력합니다. 머신 러닝 기술은 AI 테스트 봇이 코드 변경, 학습 및 새로운 기능 적응과 함께 진화하는 데 도움이 될 것입니다. 코드 수정을 감지하면 버그인지 새로운 기능인지 판단할 수 있습니다. AI는 또한 사례별로 사소한 버그를 테스트할 수 있는지 여부를 감지하여 프로세스 속도를 더욱 높일 수 있습니다.     

API 테스트 지원, 개발자가 서버, 데이터베이스 및 기타 구성 요소와 통신하는 서로 다른 프로그램 간의 상호 작용 품질을 평가하는 데 사용합니다. 테스트를 통해 요청이 성공적으로 처리되고 연결이 안정적이며 사용자가 올바른 출력을 얻을 수 있는지 확인합니다.   

이 프로세스에 AI를 추가하면 연결된 애플리케이션의 기능을 분석하고 테스트 케이스를 생성하는 데 도움이 됩니다. AI는 잠재적으로 위험한 코드 영역을 식별하기 위해 대규모 데이터 세트를 분석할 수 있습니다.  

QA 엔지니어는 AI 앱을 테스트하기 위해 다양한 도구와 전문 지식을 사용할 것입니다. 

폴 메릴, 보퍼트 페어몬트 교장

AI가 테스트로 이동함에 따라 QA 엔지니어가 테스트를 수행하는 데 사용하는 도구가 변경됩니다. 의 계정에서 테크비콘, 저자 Paul Merrill은 test.ai, AI를 사용하여 모바일 앱을 테스트하는 회사. Arbon은 또한 Google과 Microsoft에서 개발자 및 테스터로 일했습니다. 그는 책을 썼고, Google이 소프트웨어를 테스트하는 방법 (2012).   

Arbon은 수동 창 크랭크가 장착된 차가 있었던 옛날에 대해 아이들에게 이야기하고 그들은 웃는다. 머지 않아 QA 엔지니어링은 테스트 중인 시스템(SUT)을 선택, 관리 및 구동한다는 개념을 비웃게 될 것입니다. Merrill은 "AI가 더 빠르고 더 좋고 저렴하게 작업을 수행할 것입니다."라고 말했습니다. 

test.ai는 애플리케이션을 탐색하고, 애플리케이션과 상호 작용하고, 화면, 요소 및 경로를 추출하는 봇을 제공합니다. 그런 다음 테스트용 AI 기반 모델을 생성하여 고객이 결정한 일정에 따라 테스트 중인 애플리케이션을 크롤링합니다. 사이트에는 "레거시 소프트웨어 테스트 자동화 도구를 넘어서"라는 문구가 있습니다.  

창립자 어플리툴즈"Visual AI"로 구동되는 테스트 자동화 플랫폼을 제공하는 는 의사 결정 AI를 훈련시키는 동일한 데이터에서 예상되는 테스트 결과를 지원해야 하는 테스트 인프라를 설명합니다. "이것은 테스트 중인 시스템에 대한 현재 작업과 크게 다릅니다.   

Angie Jones, Applitools 개발자 관계 선임 이사

그는 2017년 최근 기사에서 Twitter의 테스트 수석 소프트웨어 엔지니어였던 Angie Jones의 경험을 설명합니다. "머신 러닝을 위한 테스트 자동화: 경험 보고서."  Jones는 시스템 자체에서 시스템의 학습 알고리즘을 체계적으로 분리하고 현재 데이터를 분리하여 시스템이 학습하는 방법과 제공한 데이터를 기반으로 결론을 내리는 방법을 설명했습니다. Jones는 현재 Applitools의 개발자 관계 수석 이사입니다.  

Merrill은 다음과 같은 질문을 던집니다. “이와 같은 프로세스가 모범 사례가 될까요? 그것들이 우리 모두가 시스템을 테스트하는 데 사용할 방법론에 통합될 것입니까?” 

테스트 중인 AI에 대해 메릴은 Applitools의 공동 설립자인 Moshe Milman과 Adam Carmi를 다음과 같이 말했습니다. 테스트 결과를 분석하지만 결과를 승인하고 조치를 취하기 위해 테스트 프로세스에서 여전히 필수적이고 필수적인 부분이 될 것입니다. 이는 오늘날 Applitools Eyes와 같은 AI 기반 테스트 제품에서 이미 볼 수 있습니다.”  

이에 대해 Merrill은 "AI가 테스터의 작업을 줄이고 테스트 위치를 식별하는 데 도움이 될 때 BFF 상태를 고려해야 합니다."라고 말합니다.  

Milman과 Carmi는 AI 테스터에게 필요한 기술을 설명합니다. Applitools 블로그, “테스트 엔지니어는 AI 기반 제품을 테스트하는 AI 기반 테스트 제품군을 구축하고 유지하기 위해 다양한 기술이 필요합니다. 작업 요구 사항에는 데이터 과학 기술에 더 중점을 두는 것이 포함되며 테스트 엔지니어는 몇 가지 딥 러닝 원칙을 이해해야 합니다."  

소프트웨어 테스트에서 AI에 대한 XNUMX가지 접근 방식 개요 

네 가지 AI 기반 테스트 접근 방식이 다음이라는 제목의 계정에서 설명되었습니다. 소프트웨어 테스팅의 AI: 2021년, 사이트 테스팅엑스퍼트, 펜실베니아주 메카닉스버그에 기반을 둔 소프트웨어 테스트 회사.  

네 가지 접근 방식은 차등 테스트, 시각적 테스트, 선언적 테스트 및 자가 치유 자동화입니다.  

In 차동 테스트, QA 엔지니어는 차이점을 분류하고 각 빌드에 대한 애플리케이션 버전을 비교합니다. 

이를 지원하는 제품의 예는 다음과 같습니다. 실행 가능, 과거 실행과 테스트 중인 소스 코드가 변경될 때마다 각 테스트의 실패 가능성을 예측하는 ML 알고리즘을 기반으로 합니다. 이 도구를 사용하면 실패할 가능성이 있는 테스트가 먼저 실행되도록 테스트 스위트를 기록할 수 있습니다. 이 도구를 선택하여 실패할 가능성이 있는 테스트의 동적 하위 집합을 실행하여 장기 실행 테스트 제품군을 몇 분으로 줄일 수 있습니다.  

In 시각적 테스트, 엔지니어는 이미지 기반 학습 및 화면 비교를 활용하여 애플리케이션의 모양과 느낌을 테스트합니다. 이를 통합한 제품의 예로는 Applitools Eyes를 포함하여 Visual AI 기능이 있는 Applitools의 플랫폼이 있습니다. 테스트 범위를 늘리고 유지 관리를 줄입니다. Ultrafast 그리드는 브라우저 간 및 장치 간 테스트를 지원하여 기능 및 시각적 테스트 속도를 높입니다. Applitools 플랫폼은 모든 최신 테스트 프레임워크와 통합되며 Selenium, Appium 및 Cypress와 같은 기존 테스트 도구와 함께 작동합니다. 

In 선언적 테스트, 엔지니어는 자연어 또는 도메인 특정 언어로 테스트의 의도를 지정하는 것을 목표로 하고 시스템은 테스트를 수행하는 방법을 결정합니다. 예제 제품에는 다음의 Test Suite가 포함됩니다. UIPath  중앙 집중식 테스트 프로세스를 자동화하고 로봇 프로세스 자동화를 통해 테스트를 실행하는 로봇을 구축하는 데 사용됩니다. 이 제품군에는 인터페이스 테스트, 테스트 관리 및 테스트 실행을 위한 도구가 포함되어 있습니다.  

또한, 도구 트리 센티스 Agile 및 DevOps 팀이 소프트웨어 애플리케이션의 종단 간 테스트를 포함한 기능을 통해 테스트 자동화 목표를 달성할 수 있도록 하는 것을 목표로 합니다. 이 도구는 테스트 케이스 디자인, 테스트 자동화, 테스트 데이터 디자인, 생성 및 분석을 포함합니다.  

In 자가 치유 자동화, 테스트하기 위해 선택한 요소는 UI의 변경 사항에 따라 자동으로 조정됩니다. 예시 제품은 다음과 같습니다. 마비, 지속적 통합 및 지속적 배포(CI/CD)를 위해 구축된 테스트 자동화 플랫폼입니다. Mabi는 앱 화면을 크롤링하고 대부분의 애플리케이션에 공통적인 기본 테스트를 실행합니다. ML 알고리즘을 사용하여 테스트 실행 및 결함 감지를 개선합니다.  

 

출처 기사 및 정보 읽기 AZ 빅 미디어에 테크비콘"머신 러닝을 위한 테스트 자동화: 경험 보고서"  앤지 존스로부터 Applitools 블로그 과에서 소프트웨어 테스팅의 AI: 2021년 TestingXperts 사이트에서.

PlatoAi. Web3 재창조. 데이터 인텔리전스 증폭.
액세스하려면 여기를 클릭하십시오.

출처: https://www.aitrends.com/software-development-2/ai-ml-applied-to-software-testing-improving-speed-accuracy/

spot_img

최신 인텔리전스

spot_img