AI가 실시간 디버깅을 통해 효과적인 UI 자동화를 작성할 수 있도록 하세요.
저자 소개
Ctrip의 수석 R&D 관리자인 Thales Fu는 AI와 엔지니어링을 결합하여 실제 문제를 해결하는 더 나은 방법을 찾는 데 전념하고 있습니다.
소개
빠르게 반복되는 소프트웨어 개발 주기에서 사용자 인터페이스(UI)의 자동화된 테스트는 효율성을 향상하고 제품 품질을 보장하는 열쇠가 되었습니다. 그러나 애플리케이션이 점점 더 복잡해짐에 따라 기존 UI 자동화 방법은 점차 한계를 드러냅니다. AI 기반 UI 자동화가 등장했지만 여전히 정확성과 안정성 문제에 직면해 있습니다. 이러한 맥락에서 이 기사에서는 실시간 디버깅 기술을 통해 AI가 작성한 UI 자동화 스크립트의 효율성을 크게 향상시킬 수 있다는 혁신적인 관점을 제안합니다.
이 문제는 단순한 기술적인 문제가 아니라 소프트웨어 품질을 보장하면서 소프트웨어 제공 속도를 높이는 방법과 관련이 있습니다. 이 기사에서는 AI가 UI 테스트 스크립트를 더 정확하게 이해하고 실행하는 데 실시간 디버깅이 어떻게 도움이 되는지, 그리고 이 방법이 어떻게 소프트웨어 개발에 혁신적인 변화를 가져올 수 있는지 살펴보겠습니다.
1. UI 자동화 현황
UI 자동화는 원래의 단순한 녹음 및 재생 도구에서 오늘날의 복잡한 스크립팅 프레임워크에 이르기까지 상당한 발전을 이루었습니다. 지속적인 기술 발전에도 불구하고 전통적인 UI 자동화 방법은 빠르게 변화하는 애플리케이션 인터페이스를 처리할 때 여전히 어려움에 직면해 있습니다. 애플리케이션이 더욱 복잡해지고 동적으로 변하면서 기존 접근 방식으로는 충분하지 않을 수 있습니다. 따라서 엔지니어들은 UI 자동화의 효율성과 신뢰성을 향상시키기 위해 보다 유연하고 안정적인 솔루션을 찾고 있습니다.
업계 설문 조사 결과에 따르면 테스트 스크립트를 수동으로 작성하는 것은 비효율적이며 업데이트 적용 시 재작업하는 데 많은 시간이 걸립니다. 연구에 따르면 UI 자동화 테스트 스크립트를 유지하는 것이 전체 테스트 작업의 60~70%를 차지할 수 있습니다. 민첩한 개발 환경에서는 각 애플리케이션 업데이트에 대해 기존 자동화 스크립트를 다시 작성하고 테스트하는 데 100시간 이상이 걸릴 수 있습니다. 이러한 높은 유지 관리 비용은 기존 UI 자동화 방법의 비효율성과 리소스 소비를 강조합니다.
2. 행동 중심 개발 BDD 소개
행동 중심 개발(BDD)은 소프트웨어 프로젝트의 개발자, 테스터 및 비기술적 이해관계자 간의 의사소통을 장려하는 민첩한 소프트웨어 개발 관행입니다. Cucumber는 팀 구성원이 자연어를 사용하여 명시적이고 실행 가능한 테스트 사례를 작성할 수 있도록 하는 BDD 방법론을 구현하는 데 널리 사용되는 도구입니다.
Cucumber는 Gherkin이라는 도메인별 언어(DSL)를 사용하는데, 이는 읽기가 매우 쉽고 기술 지식이 없는 사람도 테스트의 목적과 내용을 이해할 수 있도록 해줍니다. 테스트 시나리오는 특정 조건에서 시스템이 어떻게 응답해야 하는지를 명확하게 설명하는 일련의 주어진-When-Then 문 형식으로 작성됩니다.
예를 들어 온라인 쇼핑 웹사이트의 장바구니 기능에는 다음과 같은 Gherkin 시나리오가 있을 수 있습니다.
이 접근 방식은 자연어 설명 기능을 활용하여 기술 팀과 비기술 팀 간의 더 나은 의사소통을 촉진합니다. 이해하다. 동시에 자연어 테스트 시나리오는 프로젝트 문서화 역할도 수행하여 새로운 팀 구성원이 프로젝트 기능을 빠르게 이해할 수 있도록 도와줍니다. 이를 통해 비기술 인력이 테스트 사례 작성 및 검증 프로세스에 직접 참여할 수 있으므로 개발 작업이 비즈니스 요구 사항과 밀접하게 일치하도록 보장됩니다.
하지만 테스트 시나리오가 자연어로 작성되었지만 각 단계 뒤에 있는 구현(단계 정의)에는 여전히 기술 담당자가 프로그래밍 언어로 작성해야 합니다. 이는 테스트 로직을 구현하는 데 복잡한 코딩 작업이 포함될 수 있음을 의미합니다. 애플리케이션이 성장하고 변경됨에 따라 해당 테스트 단계를 유지하고 업데이트하는 것이 지루해질 수 있습니다. 특히 UI가 자주 변경되는 경우 관련 단계 정의도 이에 따라 업데이트되어야 합니다. 유연성과 적응성 제한도 있습니다. 오이 테스트 스크립트는 미리 정의된 단계와 구조에 의존하므로 테스트의 유연성이 제한될 수 있습니다. 일부 복잡한 테스트 시나리오의 경우 특정 테스트 논리를 구현하려면 프레임워크의 한계를 우회하는 창의적인 방법이 필요할 수 있습니다.
3. UI 자동화에 AI 적용 현황
최근 AI 기술은 UI 자동화에 통합되었으며, 특히 GPT로 대표되는 대형 모델 등장 이후에는 AI 자체에 코드 생성 기능이 있기 때문입니다. 능력. 업계에서는 대형 모델을 통해 Gherkin의 테스트 케이스 설명 언어를 테스트 코드로 직접 생성하려는 시도도 시작되었습니다.
현재 대규모 모델에서 생성된 테스트 코드는 몇 가지 주요 문제가 있습니다. 첫째, 구문 오류로 인해 생성된 스크립트가 실행되지 않을 수 있습니다. 사용 사례에서는 체크포인트를 테스트해야 합니다. 실제로 우리의 첫 시도 성공률은 5%를 넘지 않습니다.
생성되지 못한 후에는 사람들이 개입하여 일부 수정 작업을 수행해야 합니다. 포함: 디버깅, 사용 사례 수정을 통해 재생성 또는 생성된 스크립트 직접 수정.
그리고 이러한 작업 자체에도 많은 인력이 필요하므로 AI를 통해 자동으로 테스트 스크립트를 생성하려는 시스템의 원래 의도와는 상반됩니다.
4. AI는 효과적인 테스트 스크립트를 완전 자동으로 작성합니다
이 문제를 해결하기 위해 우리는 AI가 테스트 스크립트를 생성하는 전체 프로세스를 다시 생각했습니다.
우리는 사람들의 작업도 고려합니다. 사람들이 시스템에서 디버깅 및 수정 작업을 수행했는데 AI가 이 작업을 수행할 수 있습니까? 시스템이 생성된 코드를 자체적으로 실행하고 AI가 생성하는 오류 코드를 디버그하고 수정하도록 하십시오.
따라서 이러한 작업을 인간 대신 AI가 자율적으로 수행할 수 있도록 시스템 설계를 조정했습니다. 결국, 씨트립 호텔 주문 세부정보 페이지의 모든 사용 사례 중 83.3%가 누군가의 개입 없이 성공적으로 생성되었으며, 스크립트 생성 과정에서 8%의 사례에서 버그가 발견되었습니다. 우리는 이러한 사용 사례를 세 번 연속 생성했으며, 성공률은 각각 84.3%, 81.4%, 83.3%였습니다.
구체적인 테스트 사례와 코드는 다음과 같습니다.
먼저 주문 세부정보 페이지 하단의 사용자 권한 모듈로 슬라이드한 후 가격 부동 레이어를 팝업하는 예약 최적화 영역.
그런 다음 수수료 세부정보에 블랙 다이아몬드 VIP가 포함되어 있는지 확인하세요.
최종 생성된 테스트 코드는 다음과 같습니다.
5. 시스템 구현
전체 시스템의 핵심 아키텍처 다이어그램은 다음과 같습니다. 시스템의 핵심 부분은 langchain 프레임워크 프로그램입니다. 이는 대형 모델에 액세스하며 여러 도구를 갖추고 있는데, 이는 주로 두 가지 범주로 구분됩니다. 하나는 페이지 정보를 얻기 위한 도구이고 다른 하나는 디버깅 도구입니다.
Langchain은 코드를 생성하기 위해 현재 작업에 필요한 특정 제어가 무엇인지 결정하기 위해 페이지 정보 획득 도구를 자동으로 사용하여 필요에 따라 페이지 데이터를 가져옵니다. 그런 다음 디버깅 도구를 사용하여 실제로 휴대폰에서 코드를 실행하고, 디버깅 피드백을 기반으로 생성한 코드가 올바른지 판단합니다.
5.1 프롬프트 단어
기본 구조를 갖춘 후에는 이러한 도구를 서로 연결하고 AI가 작동 방식을 이해할 수 있도록 즉각적인 단어가 필요합니다. 구조적으로 프롬프트 단어에는 여러 부분이 포함됩니다. 첫째, AI가 어떻게 생각하고 작동해야 하는지 알려주고, 둘째, 디버그를 통해 생성된 각 명령문을 디버그하도록 지시하고, 출력 형식이 무엇인지 다시 말하고, 마지막으로 AI에게 지시합니다. AI가 처리할 사용 사례의 전체 텍스트입니다.
AI에게 AI가 어떻게 생각하고 작동해야 하는지 알려주기 위해 확장에는 다음 부분이 포함됩니다. 먼저 페이지에 어떤 모듈이 있는지, 어떤 모듈이 내가 작동하려는 단계가 되어야 하는지, 이 모듈에는 어떤 컨트롤과 구성 요소가 있는지 살펴보세요. , 현재 내가 무엇을 조작하고 싶은지, 어떤 컨트롤인지 컴포넌트인지, 조작하고 싶은 액션은 무엇인지, 사용할 수 있는 특수 구문은 무엇인지 등을 입력한 뒤 문장을 생성합니다.
5.2 디버깅 도구
디버깅 도구의 핵심은 adb 도구를 통해 휴대폰에 원격으로 연결하는 것입니다. 연결 후 AI가 생성한 명령을 휴대폰으로 보내 달리고, 실행 결과를 AI로 읽어 AI가 생성한 명령이 올바른지 판단할 수 있습니다.
5.3 페이지 정보 획득 도구
페이지 정보 획득 도구의 궁극적인 목적은 동작할 BDD 유스케이스에 어떤 내용을 썼는지, 특정 컨트롤의 ID를 AI가 판단하도록 돕는 것입니다. 작동하려는 것은 ID를 사용하여 ID를 기반으로 후속 프로그램 명령을 생성할 수 있다는 것입니다. ID를 얻으려면 컨트롤과 구성 요소 라이브러리가 필요합니다. 이 라이브러리의 핵심은 각 컨트롤과 구성 요소의 ID 및 설명입니다. 이 두 가지 콘텐츠를 통해 AI는 BDD 사용 사례를 읽은 후 컨트롤에 대한 설명을 기반으로 어떤 컨트롤이 필요한지 추측하는 데 도움을 받을 수 있습니다.
이 목적을 달성하기 위해 페이지 제어 라이브러리를 구축했습니다. 페이지에 있는 각 컨트롤의 ID와 설명 외에도 이 라이브러리에는 페이지와 구성 요소 간의 관계, 구성 요소와 컨트롤 간의 관계도 포함되어 있습니다. AI가 단계별로 쿼리하는 것을 용이하게 할 수 있습니다.
컨트롤 라이브러리 자체는 작업을 통한 코드의 정적 분석을 기반으로 생성됩니다. 그러나 실제 애플리케이션에서는 현재 페이지에 표시되는 컨트롤이 장면 상태에 따라 다르기 때문에 일부 시나리오에서는 페이지의 컨트롤이 숨겨집니다. 따라서 페이지 정보 획득 도구는 페이지에 있는 현재 기존 컨트롤과 컨트롤 라이브러리에서 쿼리된 컨트롤을 교차하여 현재 페이지에 실제로 표시되는 컨트롤과 해당 설명 정보를 얻습니다.
5.4 AI 추가 분할
이 작업을 수행한 후 AI는 기본적으로 위 그림의 노란색 부분인 인간 작업을 자동으로 수행할 수 있습니다. 세대 성공률도 5%에서 55%로 높아졌지만, 여전히 55% 성공률은 부족하다.
실패한 사례를 추가로 분석했습니다. 가장 큰 문제는 AI의 환각인 것으로 밝혀졌다. 프롬프트의 말은 비교적 자세했지만, AI가 요구한 대로 문제를 처리하지 못하고, 스스로 말도 안 되는 말을 하는 경우도 있었다.
우리의 결론은 AI에게 너무 많은 책임이 부여되고 고려해야 할 사항이 너무 많다는 것입니다. 토큰이 부족한 것이 아니라 너무 많은 일을 해야 한다면 잊어버리고 요구 사항을 정확하게 완료할 수 없다는 것입니다. 그래서 분할을 고려했고, 여전히 랭체인의 기능을 사용했습니다. AI가 도구를 통해 기능을 완성할 수 있는데 왜 이 도구 자체가 AI가 될 수 없는 걸까요?
다시 분할할 수도 있습니다.
이러한 분할을 통해 각 AI가 고려해야 할 작업을 덜 간단하게 만들고 더 정확하게 처리하도록 하여 최종 세대 성공률을 80% 이상으로 높였습니다.
VI. 후속 개발
현재 AI는 사람의 참여 없이 약 80%의 성공률로 자동화된 테스트 코드를 생성할 수 있습니다. 이는 매우 흥미롭지만 여전히 많은 문제가 있습니다. 계속해서 해결해보세요.
1) 대형 모델을 호출하는 비용은 여전히 높습니다. 더 저렴하게 작업을 완료할 수 있는 더 좋은 방법이 있을까요?
2) 현재 처리하기 어려운 일부 작업이나 검증이 80%의 성공률에는 여전히 개선의 여지가 많으며 생성된 결과를 검토해야 합니다.
3) 이 밖에도 다른 측면에서도 개선의 여지가 있어 지속적인 개선이 필요합니다.
위 내용은 AI가 실시간 디버깅을 통해 효과적인 UI 자동화를 작성할 수 있도록 하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Binance는 Global Digital Asset Trading Ecosystem의 대 군주이며, 그 특성에는 다음이 포함됩니다. 1. 평균 일일 거래량은 1,500 억 달러를 초과하여 주류 통화의 98%를 차지하며 500 개의 거래 쌍을 지원합니다. 2. 혁신 매트릭스는 파생 상품 시장, Web3 레이아웃 및 교육 시스템을 포함합니다. 3. 기술적 이점은 밀리 초에 일치하는 엔진이며, 최고 처리량은 초당 140 만 건의 트랜잭션입니다. 4. 규정 준수 진행 상황은 15 개국 라이센스를 보유하고 있으며 유럽과 미국에 준수 엔티티를 설립합니다.

거래소는 오늘날의 cryptocurrency 시장에서 중요한 역할을합니다. 그들은 투자자들이 거래 할 수있는 플랫폼 일뿐 만 아니라 시장 유동성 및 가격 발견의 중요한 원천이기도합니다. 세계 최대의 가상 환전 거래소는 상위 10 위이며, 이러한 거래소는 거래량이 훨씬 앞서있을뿐만 아니라 사용자 경험, 보안 및 혁신적인 서비스에서 고유 한 장점이 있습니다. 목록 위에있는 교환은 일반적으로 대규모 사용자 기반과 광범위한 시장 영향을 미치며 거래량 및 자산 유형은 종종 다른 거래소에서 도달하기가 어렵습니다.

cryptocurrency 시장의 급락으로 인해 투자자들 사이에 공황이 발생했으며 Dogecoin (Doge)은 가장 어려운 지역 중 하나가되었습니다. 가격은 급격히 하락했으며 분산 금융 (DEFI) (TVL)의 총 가치 잠금 장치도 크게 감소했습니다. "Black Monday"의 판매 물결은 cryptocurrency 시장을 휩쓸었고 Dogecoin은 처음으로 타격을 받았습니다. DefitVl은 2023 년 수준으로 떨어졌고 지난 달 통화 가격은 23.78% 하락했습니다. Dogecoin의 Defitvl은 주로 SOSO 가치 지수의 26.37% 감소로 인해 272 만 달러로 떨어졌습니다. 지루한 Dao 및 Thorchain과 같은 다른 주요 Defi 플랫폼도 TVL도 각각 24.04% 및 20으로 떨어졌습니다.

2025 년에 레버리지 거래, 보안 및 사용자 경험에서 뛰어난 성능을 보이는 플랫폼은 다음과 같습니다. 1. OKX, 고주파 거래자에게 적합하여 최대 100 배의 레버리지를 제공합니다. 2. Binance, 전 세계의 다중 통화 거래자에게 적합하며 125 배 높은 레버리지를 제공합니다. 3. Gate.io, 전문 파생 상품 플레이어에게 적합하며 100 배의 레버리지를 제공합니다. 4. 초보자 및 소셜 트레이더에게 적합한 Bitget, 최대 100 배의 레버리지를 제공합니다. 5. 크라켄은 꾸준한 투자자에게 적합하며 5 배의 레버리지를 제공합니다. 6. Bybit, Altcoin Explorers에 적합하며 20 배의 레버리지를 제공합니다. 7. 저비용 거래자에게 적합한 Kucoin, 10 배의 레버리지를 제공합니다. 8. 비트 피 넥스, 시니어 플레이에 적합합니다

ETH 업그레이드 후, 초보자는 손실을 피하기 위해 다음 전략을 채택해야합니다. 1. 숙제를하고 기본 지식과 ETH의 업그레이드 내용을 이해합니다. 2. 통제 위치, 소량으로 물을 테스트하고 투자를 다각화합니다. 3. 거래 계획을 세우고 목표를 명확하게하고 중지 손실 지점을 설정하십시오. 4. 합리적으로 프로파일 링하고 정서적 의사 결정을 피하십시오. 5. 공식적이고 안정적인 거래 플랫폼을 선택하십시오. 6. 단기 변동의 영향을 피하기 위해 장기 보유를 고려하십시오.

최고 거래소에는 다음이 포함됩니다. 1. 세계 최대의 거래량 인 Binance는 600 개의 통화를 지원하며 스팟 취급 수수료는 0.1%입니다. 2. 균형 잡힌 플랫폼 인 OKX는 708 개의 거래 쌍을 지원하며 영구 계약 처리 수수료는 0.05%입니다. 3. Gate.io, 2700 개의 소규모 통화를 포괄하며 스팟 취급 수수료는 0.1%-0.3%입니다. 4. Coinbase, 미국 규정 준수 벤치 마크, 스팟 취급 수수료는 0.5%입니다. 5. Kraken, 최고 보안 및 정기 예약 감사.

Worldcoin (WLD)은 Cryptocurrency 시장에서 고유 한 생체 인정 및 개인 정보 보호 메커니즘으로 눈에 띄고 많은 투자자의 관심을 끌고 있습니다. WLD는 혁신적인 기술, 특히 OpenAi 인공 지능 기술과 함께 Altcoins에서 뛰어난 성과를 거두었습니다. 그러나 향후 몇 년 안에 디지털 자산은 어떻게 행동 할 것인가? WLD의 미래 가격을 함께 예측합시다. 2025 WLD 가격 예측은 2025 년 WLD에서 상당한 성장을 달성 할 것으로 예상됩니다. 시장 분석에 따르면 평균 WLD 가격은 최대 $ 1.36로 $ 1.31에 도달 할 수 있습니다. 그러나 곰 시장에서 가격은 약 $ 0.55로 떨어질 수 있습니다. 이러한 성장 기대는 주로 WorldCoin2에 기인합니다.

암호 화폐의 번화 한 세계에서는 새로운 기회가 항상 나타납니다. 현재 Kerneldao (Kernel) 에어 드롭 활동은 많은 관심을 끌고 많은 투자자들의 관심을 끌고 있습니다. 그렇다면이 프로젝트의 기원은 무엇입니까? BNB 보유자는 어떤 이점을 얻을 수 있습니까? 걱정하지 마십시오. 다음은 당신을 위해 하나씩 공개 할 것입니다.
