KR20210040884A - 엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체 - Google Patents

엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체 Download PDF

Info

Publication number
KR20210040884A
KR20210040884A KR1020210038844A KR20210038844A KR20210040884A KR 20210040884 A KR20210040884 A KR 20210040884A KR 1020210038844 A KR1020210038844 A KR 1020210038844A KR 20210038844 A KR20210038844 A KR 20210038844A KR 20210040884 A KR20210040884 A KR 20210040884A
Authority
KR
South Korea
Prior art keywords
test
edge device
model
edge
task
Prior art date
Application number
KR1020210038844A
Other languages
English (en)
Other versions
KR102493449B1 (ko
Inventor
항 장
비아오 장
Original Assignee
베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. filed Critical 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디.
Publication of KR20210040884A publication Critical patent/KR20210040884A/ko
Application granted granted Critical
Publication of KR102493449B1 publication Critical patent/KR102493449B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3404Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for parallel or distributed programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3608Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/561Adding application-functional data or data for application control, e.g. adding metadata

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Software Systems (AREA)
  • Library & Information Science (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체를 개시하며, 엣지 컴퓨팅 기술 분야에 관한 것이다. 구체적인 구현 방식은, 엣지 모바일 플랫폼에서 테스트 대상 모델을 획득하며; 상기 테스트 대상 모델에 따라 테스트 작업을 생성하고, 상기 테스트 작업은 상기 테스트 대상 모델과 상기 테스트 대상 모델을 수행하기 위한 자동화된 테스트 프로그램을 포함하며; 상기 엣지 장치에서 상기 자동화된 테스트 프로그램을 실행하여 상기 테스트 대상 모델을 실행하도록, 상기 테스트 작업을 엣지 장치에 전송하며; 상기 엣지 장치에 의한 상기 테스트 작업의 실행 정보에 따라 테스트 결과를 생성한다. 본 실시예는 테스트 효율과 지능화 정도를 향상시킨다.

Description

엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체{EDGE COMPUTING TEST METHODS, DEVICES, ELECTRONIC DEVICES AND COMPUTER-READABLE MEDIA}
본 발명은 컴퓨터 기술에 관한 것이며, 특히 엣지 컴퓨팅 기술 분야에 관한 것이다.
엣지 컴퓨팅은 사물이나 데이터의 소스에 가까운 일측에서, 네트워크, 컴퓨팅, 스토리지 및 애플리케이션 핵심 기능을 통합한 개방형 플랫폼을 사용하여 근처에서 가장 가까운 서비스를 제공하는 것을 말한다. 상기 엣지 모바일 플랫폼은 클라우드 기반 딥러닝 모델을 다양한 엣지 장치에 적용한다. 엣지 컴퓨팅 프로젝트의 테스터는 엣지 장치에서 최종 출력 모델의 사용성, 효과 및 성능을 보장하기 위해 모델의 사용성과 정확성에 주의를 기울여야 한다.
현재, 모델의 사용성 및 정확성 테스트의 경우, 가장 직접적인 테스트 문제는 엄청난 워크로드이다. 예를 들어, 단순한 모델 사용성 회귀에 대해 적어도 수백가지 테스트 분기를 테스트한다. 기존의 엣지 컴퓨팅 테스트는 대부분 수동으로 수행되어 효율과 지능화 정도가 낮다.
본 발명의 실시예는 엣지 테스트의 효율과 지능화 정도를 향상하기 위한 엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체를 제공한다.
제1 측면에서, 본 발명의 실시예에 따른 엣지 컴퓨팅 테스트 방법은,
엣지 모바일 플랫폼에서 테스트 대상 모델을 획득하는 단계;
상기 테스트 대상 모델에 따라 테스트 작업을 생성하는 단계 - 상기 테스트 작업은 상기 테스트 대상 모델과 상기 테스트 대상 모델을 수행하기 위한 자동화된 테스트 프로그램을 포함함 - ;
상기 엣지 장치에서 상기 자동화된 테스트 프로그램을 실행하여 상기 테스트 대상 모델을 실행하도록, 상기 테스트 작업을 엣지 장치에 전송하는 단계; 및
상기 엣지 장치에 의한 상기 테스트 작업의 실행 정보에 따라 테스트 결과를 생성하는 단계; 를 포함한다.
제2 측면에서, 본 발명의 실시예에 따른 엣지 컴퓨팅 테스트 장치는,
엣지 모바일 플랫폼에서 테스트 대상 모델을 획득하는 획득 모듈;
상기 테스트 대상 모델에 따라 테스트 작업을 생성하는 작업 생성 모듈 - 상기 테스트 작업은 상기 테스트 대상 모델과 상기 테스트 대상 모델을 수행하기 위한 자동화된 테스트 프로그램을 포함함 - ;
상기 엣지 장치에서 상기 자동화된 테스트 프로그램을 실행하여 상기 테스트 대상 모델을 실행하도록, 상기 테스트 작업을 엣지 장치에 전송하는 전송 모듈; 및
상기 엣지 장치에 의한 상기 테스트 작업의 실행 정보에 따라 테스트 결과를 생성하는 결과 생성 모듈; 을 포함한다.
제3 측면에서, 본 발명의 실시예는 또한 전자 장치를 제공하며, 상기 장치는,
하나 이상의 프로세서; 및
상기 하나 이상의 프로세서와 통신 연결되는 메모리;를 포함하여 구성되며,
상기 메모리에는 상기 하나 이상의 프로세서에 의해 실행될 수 있는 명령어가 저장되며, 상기 명령어가 상기 하나 이상의 프로세서에 의해 실행될 경우, 상기 하나 이상의 프로세서가 제1 측면의 실시예의 엣지 컴퓨팅 테스트 방법을 수행한다.
제4 측면에서, 본 발명의 실시예는 또한 컴퓨터 프로그램이 저장되어 있는 비 일시적 컴퓨터 판독 가능 저장 매체를 제공하는바, 상기 컴퓨터 프로그램의 명령어가 실행될 경우, 제1 측면의 실시예에 따른 엣지 컴퓨팅 테스트 방법이 수행된다.
본 발명에 따른 기술은 모델의 사용성 및 정확성 테스트 과정에서 효율이 낮은 기술적 문제를 해결하고 테스트 효율성과 지능화 정도를 향상시킨다.
제5 측면에서, 본 발명의 실시예는 또한 컴퓨터 판독 가능 매체에 저장되어 있는 컴퓨터 프로그램을 제공하는바, 상기 컴퓨터 프로그램의 명령어가 실행될 경우, 본 발명의 제1 측면의 실시예의 엣지 컴퓨팅 테스트 방법이 수행된다.
본 부분에서 설명된 내용은 본 발명의 실시예의 핵심적이거나 중요한 특징을 표시하기 위한 것이 아니며, 또한 본 발명의 범위를 제한하기 위한 것이 아님을 이해해야 한다. 본 발명의 다른 특징은 다음의 설명에 의해 쉽게 이해될 수 있을 것이다.
첨부도면은 기술적 해결책을 더 잘 이해하기 위해 사용되며, 본 발명에 대한 제한을 구성하지 않는다. 여기서,
도 1은 본 발명의 실시예에 따른 제1 엣지 컴퓨팅 테스트 방법의 흐름도이다.
도 2a는 본 발명의 실시예에 따른 제2 엣지 컴퓨팅 테스트 방법의 흐름도이다.
도 2b는 본 발명의 실시예에 따른 iOS 장치 관리 프로그램의 개략도이다.
도 3은 본 발명의 실시예에 따른 제3 엣지 컴퓨팅 테스트 방법의 흐름도이다.
도 4a는 본 발명의 실시예에 따른 제4 엣지 컴퓨팅 테스트 방법의 흐름도이다.
도 4b는 본 발명의 실시예에 따른 모델 테스트 과정의 개략적인 흐름도이다.
도 4c는 본 발명의 실시예에 따른 테스트 결과의 개략도이다.
도 4d는 본 발명의 실시예에 따른 다른 테스트 결과의 개략도이다.
도 5a는 본 발명의 실시예에 따른 제5 엣지 컴퓨팅 테스트 방법의 흐름도이다.
도 5b는 본 발명의 실시예에 따른 AirFlow의 방향성 비순환 그래프 목록의 개략도이다.
도 5c는 본 발명의 실시예에 따른 AirFlow의 방향성 비순환 그래프를 나타낸 도면이다.
도 5d는 본 발명의 실시예에 따른 AirFlow의 각 단계의 작업 상태 검토 및 중단점 시작/중지의 제어를 나타낸 개략도이다.
도 5e는 본 발명의 실시예에 따른 프레임 워크 변환 로직의 개략도이다.
도 6은 본 발명의 실시예에 따른 엣지 컴퓨팅 테스트 장치의 구조도이다.
도 7은 본 발명의 실시예의 엣지 컴퓨팅 테스트 방법을 구현하기 위한 전자 장치의 블록도이다.
이하, 첨부 도면을 결부하여 본 발명의 예시적인 실시예에 대해 설명하며, 이해를 돕기 위해, 본 설명에는 본 발명의 실시예의 다양한 세부 사항이 포함되며, 이를 단순히 예시적인 것으로 간주해야 한다. 따라서, 당업자는 본 발명의 범위 및 사상을 벗어나지 않고 여기에 설명된 실시예에 대해 다양한 변경 및 수정이 이루어질 수 있다는 것을 인식해야 한다. 마찬가지로, 이하의 설명에서 명확성과 간결성을 위해 잘 알려진 기능 및 구조에 대한 설명은 생략한다.
본 발명의 실시예에서, 도 1은 본 발명의 실시예에 따른 제1 엣지 컴퓨팅 테스트 방법의 흐름도이며, 본 발명의 실시예는 엣지 장치에서 엣지 모바일 플랫폼 중의 모델의 사용성 및 정확성을 테스트하는 경우에 적용된다.
엣지 모바일 플랫폼은 수학적 모델, 특히 현재 가장 인기 있는 딥러닝 모델과 연관되며, 해당 딥러닝 모델은 클라우드의 모델(클라우드 모델이라 약칭)을 엣지 장치에 적용할 수 있는 모델로 변환하기 위해 사용되며, 해당 변환된 모델을 테스트 대상 모델이라 한다. 본 실시예는 테스트 대상 모델의 사용성 및 정확성을 테스트하며, 다시 말하면, 엣지 장치의 테스트 대상 모델에 대한 호환 능력 및 성능을 테스트한다.
해당 방법은, 소프트웨어 및/또는 하드웨어로 구현되며 구체적으로 일정한 데이터 연산 능력을 갖춘 전자 장치에 구성되는 엣지 컴퓨팅 테스트 장치를 통해 수행된다. 도 1에 도시된 엣지 컴퓨팅 테스트 방법은 다음 단계를 포함한다.
S110, 엣지 모바일 플랫폼에서 테스트 대상 모델을 획득한다.
테스트 대상 모델은 엣지 모바일 플랫폼에서 클라우드 모델에 따라 변환하여 얻거나 또는 외부에서 얻은 클라우드 모델에 대응하는 테스트 대상 모델일 수 있다.
대안적으로, 테스트 대상 모델의 데이터는 적어도 하나이다. 테스트 대상 모델의 파일 유형에는 라이브러리(library), 소프트웨어 개발 키트(Software Development Kit, SDK ), 바이너리(binary) 파일 등이 포함되지만 이에 한정되지 않는다. 테스트 대상 모델이 딥러닝 모델인 경우, 해당 딥러닝 프레임 워크(framework)에는 패들(paddle), 기호 수학 시스템(tensor flow), 피토치(torch의 Python버전 신경망 프레임 워크) 등을 포함하지만 이에 한정되지는 않는다. 테스트 대상 모델의 딥러닝 네트워크에는 inception, vgg(Visual Geometry Group Network) 등이 포함되지만 이에 한정되지 않는다.
S120, 테스트 대상 모델에 따라 테스트 작업을 생성하며, 상기 테스트 작업은 테스트 대상 모델과 테스트 대상 모델을 수행하기 위한 자동화된 테스트 프로그램을 포함한다.
테스트 요구사항을 기반으로, 테스트 대상 모델에 따라 테스트 작업이 생성된다. 하나의 테스트 작업에는 하나의 테스트 대상 모델과 해당 테스트 대상 모델을 실행하기 위한 자동화된 테스트 프로그램이 포함된다.
본 실시예에서, 자동화된 테스트 프로그램은 테스트 대상 모델이 자동화된 테스트 프로그램과 일치한 엣지 장치에서 자동으로 실행되도록 보장하기 위해 사용된다. 예를 들어, 테스트 요구 사항에 엣지 장치(1)에서 테스트 대상 모델(A)의 실행 상태가 포함되는 경우, 테스트 작업에는 테스트 모델(A)과 엣지 장치(1)와 일치한 자동화된 테스트 프로그램이 포함되며, 해당 자동화된 테스트 프로그램이 엣지 장치(1)에 의해 실행됨으로써, 테스트 모델(A)이 자동으로 실행되도록 보장하고, 테스트 모델(A)의 실행 상태를 획득한다.
대안적으로, 엣지 장치의 모바일 속성과 탑재된 운영 체제에 따라 자동화된 테스트 프로그램을 미리 생성하여 자동화된 테스트 프로그램의 작성량을 줄인다. 상기 모바일 속성에는 모바일 및 비 모바일, 모바일 전화, 휴대용 웨어러블 장치, 자율 주행 차량 등과 같은 모바일 엣지 장치, 데스크톱, 개발 보드, 가속기 등과 같은 비 모바일 엣지 장치가 포함된다. 운영 체제에는 Apple 모바일 장치 운영 체제(iPhone Operation System, iOS) 및 안드로이드(Android) 모바일 엣지 장치; 및 Linux, Windows 등 비 모바일 엣지 장치가 포함된다.
구체적으로, 모바일 엣지 장치에 안드로이드 운영체제(안드로이드 장치라 약칭)가 탑재되고, 안드로이드 디버그 브리지(Android Debug Bridge, ADB)와 uiatuomator2(Android 인터페이스 자동화된 프레임 워크)의 방식으로 자동화된 테스트 프로그램을 실행하여 안드로이드 장치 클러스터와 연결하는 경우, 각 Android 장치에 모바일 인터페이스 자동화된 테스트 프레임 워크(atx)의 애플리케이션이 설치되어야 한다. 모바일 엣지 장치에 iOS(iOS 장치라 약칭)가 장착된 경우, 크로스 플랫폼 자동화 테스트 도구(appium)의 하위 계층이 실제로 wda (Web Driver Agent, iOS 모바일 테스트 프레임 워크)를 사용하여 구현되는 점을 고려하여 wda를 선택하여 자동화된 테스트 프로그램을 구현한다.
S130, 엣지 장치에서 자동화된 테스트 프로그램을 실행하여 테스트 대상 모델을 실행하도록, 테스트 작업을 엣지 장치에 전송한다.
구체적으로, 테스트 요구 사항에 따라 전송할 엣지 장치를 선택할 수 있다. 만일 테스트 요구 사항에 모든 비 모바일 엣지 장치가 포함되면, 테스트 작업을 모든 비 모바일 엣지 장치에 전송한다.
선택한 엣지 장치를 연결하고, 테스트 작업을 선택한 엣지 장치에 전송한다. 엣지 장치는 테스트 작업을 수신한 후 자동화된 테스트 프로그램과 테스트 대상 모델을 파싱하고 자동화된 테스트 프로그램을 로컬에서 자동으로 실행하며, 자동화된 테스트 프로그램을 통해 테스트 대상 모델을 설치 및 실행한다.
S140, 엣지 장치에 의한 테스트 작업의 실행 정보에 따라 테스트 결과를 생성한다.
테스트 작업의 실행 정보는 테스트 작업의 실행 상태 및 테스트 데이터를 포함하지만, 이에 한정되지 않는다. 테스터가 문제를 빠르게 찾을 수 있도록, 실행 정보에 대해 시각적 테스트 결과를 생성하고 인터페이스에 표시한다. 테스트 결과는 테스트 대상 모델의 사용성 및 정확성을 반영하며, 엣지 장치의 테스트 대상 모델에 대한 호환 능력 및 성능을 반영한다.
또한, 보다 안정적이고 품질이 우수하며 오류 발생이 적은 코드를 생성하기 위해, S140단계 이후에 작업 단언을 수행하며, 만일 단언에 성공하면 후속 테스트 작업을 계속하고, 단언에 실패하거나 단언이 비정상이면 알람이 발생한다.
본 발명의 실시예에서, 엣지 모바일 플랫폼에서 테스트 대상 모델을 획득하고, 테스트 모델에 따라 테스트 작업을 자동으로 생성하고, 테스트 작업을 엣지 설비에 자동으로 전송하며, 또한 엣지 장치에 의한 테스트 작업의 실행 정보에 따라 테스트 결과를 자동으로 생성함으로써, 테스트 대상 모델의 사용성과 정확성에 대한 자동화된 테스트 과정을 구현하며, 테스트 자동화 정도와 효율을 향상시킨다.
전술한 실시예 및 다음 실시예에서, 테스트 작업을 엣지 장치에 전송하는 단계는, 1) 동일한 테스트 작업을 서로 다른 엣지 장치에 전송하는 단계; 2) 테스트 작업을 엣지 장치에 전송하여 클라우드에서 테스트 대상 모델에 대응하는 클라우드 모델을 실행하는 단계; 3) 서로 다른 테스트 모델이 포함된 서로 다른 테스트 작업을 동일한 엣지 장치에 전송하는 단계; 및 4) 테스트 작업을 테스트 작업의 테스트 시나리오와 일치한 엣지 장치에 전송하는 단계 - 상기 테스트 시나리오는 모바일 시나리오 및 비 모바일 시나리오를 포함함 - ; 중의 어느 하나를 포함한다.
상기 첫번째 조작은 동일한 테스트 대상 모델에서 서로 다른 엣지 장치의 실행 성능과 효과를 비교하여 사용자에게 적합한 엣지 장치를 추천하는데 적합하다. 서로 다른 엣지 장치는 ARM (Advanced RISC Machines), 디지털 신호 처리 기술(Digital Signal Processing, DSP), 코어 머신 러닝 (Core Machine Learning, coreml) 등과 같이 서로 다른 하드웨어 칩을 가지거나 또는 컴퓨터 프로그래밍 언어(python) 버전, 오픈 소스 컴퓨터 비전 라이브러리(Open Source Computer Vision Library, opencv ) 버전, 지원되는 딥러닝 프레임 워크 버전 등과 같이 서로 다른 시스템 환경을 가질 수 있다. 두번째 조작에서, 클라우드에서 클라우드 모델을 실행하고 엣지 장치에서 해당 클라우드 모델에 대응하는 테스트 대상 모델을 실행하며, 클라우드와 엣지 컴퓨팅 시나리오에서 동일한 모델의 성능 및 효과를 대비하는데 적용된다. 세번째 조작은 서로 다른 테스트 대상 모델에 대한 동일한 엣지 장치의 성능 및 효과를 비교하는데 적용된다. 네번째 조작은 서로 다른 테스트 시나리오에 적용된다. 상기 모바일 시나리오는 모바일 엣지 장치와 일치하고, 비 모바일 시나리오는 비 모바일 장치와 일치하다.
본 실시예는 4가지 테스트 방법을 제공하여 서로 다른 모델, 서로 다른 엣지 장치, 서로 다른 시나리오의 테스트를 지원하고 다중 각도 및 세분화된 테스트를 구현하며, 사용자 시나리오에 적합한 엣지 장치를 추천하는데 유리하고, 사용자들이 입문하여 사용할 수 있는 문턱을 최대한 낮추어 딥러닝 서비스의 다양화 및 파트너와의 상호 이익을 촉진하여 우수하고 고급적이며 완벽한 딥러닝 생태계를 형성한다.
도 2a는 본 발명의 실시예에 따른 제2 엣지 컴퓨팅 테스트 방법의 흐름도이며, 본 발명의 실시예는 전술한 실시예의 기술 방안을 기반으로 최적화된다.
대안적으로, “테스트 작업을 테스트 작업의 테스트 시나리오와 일치한 엣지 장치에 전송하는 단계”를 수행하기 전에 테스트 작업의 테스트 시나리오에 대응하는 엣지 장치 클러스터의 인터페이스에 액세스하여 엣지 장치 클러스터에 의해 피드백된 유휴 엣지 장치를 획득하고, 상기 엣지 장치 클러스터는 모바일 엣지 장치 클러스터와 비 모바일 엣지 장치 클러스터를 포함하며, 또한 유휴 엣지 장치에 연결함으로써, 테스트 작업을 유휴 엣지 장치에 전송한다.
대안적으로, 테스트 작업을 엣지 장치에 전송한 후, 테스트 작업 이력에 대해 릴리스 및 백업 중의 적어도 한가지 조작을 수행하거나 및/또는, 테스트 작업의 실행 상태와 로그의 일관성 확인을 수행한다.
도 2a에 따른 방법은 다음과 같은 조작을 포함한다.
S210, 엣지 모바일 플랫폼에서 테스트 대상 모델을 획득한다.
S220, 테스트 대상 모델에 따라 테스트 작업을 생성하며, 상기 테스트 작업은 테스트 대상 모델과 테스트 대상 모델을 수행하기 위한 자동화된 테스트 프로그램을 포함한다.
S230, 테스트 작업의 테스트 시나리오에 대응하는 엣지 장치 클러스터의 인터페이스에 액세스하여 엣지 장치 클러스터에 의해 피드백된 유휴 엣지 장치를 획득하며, 상기 엣지 장치 클러스터는 모바일 엣지 장치 클러스터 및 비 모바일 엣지 장치 클러스터를 포함한다.
S230단계 전에 엣지 장치 클러스터를 구성해야 한다. 구체적으로, 모바일 엣지 장치 클러스터는 Android 장치 클러스터 및 iOS 장치 클러스터를 포함한다. Android 장치 클러스터의 경우, 직접 Baidu 모바일 클라우드 테스트 센터 플랫폼을 사용한다. 해당 플랫폼을 기반으로 프로젝트 팀의 비공개 Android 장치 클러스터를 유지한다. iOS 장치 클러스터의 경우, iOS 클러스터를 구성하기 위한 가젯(rmtc-agent)을 기반으로, wda, nodejs (JavaScript 런타임 환경) 및 Apache (웹 서버)와 같은 도구를 결부하여, 지정된 프로젝트 전용 비공개 iOS 장치 클러스터를 공동으로 구축한다. 각 iOS 장치의 상태, 작업 실행 로그, 리소스의 동적 추가 및 삭제를 실시간으로 확인할 수 있다. 도 2b는 본 발명의 실시예에 따른 iOS 장치 관리 프로그램의 개략도이다. 도 2b는 파일 명칭이 "gongchangzhang"인 로그 디렉토리를 불러와 표시한 것이며, "gongchangzhang"의 장비 식별 문서(equipment Identity document, epID, 장치 번호), 상태, 임대 상태, wda, appium, iproxy (프록시), webkit9 (브라우저 엔진 ), jqc (job query check, 작업 센터), 일련 번호, 모델 및 시스템 버전 등이 표시된다. 도 2b에는 또한 장치 조작 패널, Android 애플리케이션 패키지(Android application package, apk) 조작 패널 및 장치 상태 정보가 표시된다. 상기 장치 조작 패널에는 현재 메모리 사용량, 현재 IP 주소, 업데이트 버튼, 캡처 버튼, 수동 업그레이드 버튼, 오류 복구 메뉴얼 버튼 및 덤프(파일 백업 시스템)이 포함된다. apk 조작 패널에는 패키지 파일 선택 버튼, 파일 이름 입력 상자, 패키지 이름 입력 상자, URL(Uniform Resource Locator) 입력 상자가 포함된다.
비 모바일 엣지 장치 클러스터의 경우, 미리 전자 장치에 중간 프록시 서버가 구축되며, 중간 프록시 서버는 비 모바일 엣지 장치 클러스터의 각 비 모바일 장치를 위해 네트워크 주소를 제공한다. 구체적으로, 비 모바일 엣지 장치에 소프트웨어를 설치하고, 중간 프록시 서버의 주소를 구성하고, 마지막으로 비 모바일 장치가 전용 IP 주소에 직접 연결할 수 있는 전용 IP (인터넷 프로토콜) 주소를 획득하도록 하며, 전용 IP 주소를 직접 연결하여 해당 비 모바일 장치에 원격으로 로그인할 수 있음으로, 일련의 네트워크 연결 요청을 통합 관리할 수 있는 장치 클러스터를 형성할 수 있다.
엣지 장치 클러스터는 액세스를 위한 외부 인터페이스를 제공한다. 본 실시예에서, 테스트 작업의 모바일 테스트 시나리오에 대응하는 모바일 엣지 장치 클러스터의 인터페이스 및 비 모바일 테스트 시나리오에 대응하는 비 모바일 장치 클러스터의 인터페이스를 액세스한다. 모바일 엣지 장치 클러스터의 인터페이스는 Android 장치 클러스터의 인터페이스 및 iOS 장치 클러스터의 인터페이스를 포함한다. 엣지 장치 클러스터는 유휴 엣지 장치를 피드백한다.
S240, 유휴 엣지 장치를 연결한다.
유휴 엣지 장치를 획득한 후, 유휴 엣지 장치를 연결하며, 이를 유휴 엣지 장치 임대라고도 한다. 구체적으로, 모바일 엣지 장치 클러스터 또는 비 모바일 엣지 장치 클러스터 중의 유휴 엣지 장치의 네트워크 주소를 연결한다.
S250, 엣지 장치에서 자동화된 테스트 프로그램을 실행하여 테스트 대상 모델을 실행하도록, 테스트 작업을 유휴 엣지 장치에 전송한다.
테스트 작업이 시작되면 원격 유휴 엣지 장치를 동적으로 할당하여 테스트 작업을 실행할 수 있다. 만일 테스트 작업이 실패하면, 장치 리소스를 신속하게 복구하고 작업 상태를 재설정하며, 복구된 장치를 실시간으로 다음 테스트 작업 리소스 풀에 추가한다.
S260, 테스트 작업 이력에 대해 릴리스 및 백업 중의 적어도 한가지 조작을 수행한다.
각 반복 테스트에 수백 또는 수천개의 분기가 있기 때문에, 테스트 작업 이력의 누적으로 인한 저장 자원의 낭비를 피하기 위해, 본 실시예는 필요한 작업 정리 메커니즘을 추가한다. 구체적으로, 각 배치 작업 테스트를 위해 레이블링을 지정하여 서로 다른 배치의 테스트 작업을 구분한다. 테스트 작업 이력을 릴리스 및/또는 백업하며, 예를 들어, 테스트 작업 이력을 검토할 수 있도록, 테스트 작업의 최신 배치와 테스트 결과만 저장하고 나머지 작업 배치는 기본적으로 지정된 일 수 동안 백업한다.
S270, 테스트 작업의 실행 상태와 로그의 일관성 확인을 수행한다.
유휴 엣지 장치에서 테스트 대상 모델을 실행하는 과정에서, 만일 유휴 엣지 장치의 연결 또는 분리와 같은 인위적인 개입이 발생하는 경우, 테스트 작업의 실행 상태가 로그와 동기화되지 않아 최종 테스트 결과와 일치하지 않게 된다. 따라서, 각 테스트 작업의 일관성과 정확성을 보장하기 위해, 다중 상호 검증 메커니즘을 사용하여 테스트 작업의 실행 상태와 로그에 대해 일관성 확인을 수행한다.
대안적으로, 다중 상호 검증 메커니즘은, 하트 비트 메커니즘을 사용하여 엣지 장치의 연결이 해제된 후 다시 연결하며; 엣지 장치와의 연결 상태에 따라 실행 상태와 로그를 업데이트하여 실행 상태와 로그를 일치시키는 것을 포함한다.
상기 S260와 S270의 수행 순서에는 제한이 없으며, 먼저 S260을 수행한 다음 다시 S270을 수행하거나 또는 먼저 S270을 수행한 다음 다시 S260을 수행하거나 또는 동시에 수행할 수도 있다.
S280, 엣지 장치에 의한 테스트 작업의 실행 정보에 따라 테스트 결과를 생성한다.
본 실시예에서, 엣지 장치 클러스터의 방식을 통해 엣지 장치 활용 문제를 잘 해결할 수 있고, 원격 유휴 엣지 장치를 동적으로 할당하여 테스트 작업을 수행할 수 있다.
전술한 실시예 및 다음의 실시예에서, 테스트 작업의 안정성을 확보하고, 장치 연결 시간 초과, 간헐적 실패, 작업 중단 및 팝업창 캡처 오류 문제를 자동으로 실행 및 해결하기 위해, 엣지 컴퓨팅 테스트 방법은 다음 조작 중 적어도 하나를 포함한다.
첫번째 조작; 테스트 작업을 엣지 장치에 전송하기 전에 전자 장치의 좀비 장치를 삭제한다.
Android 장치의 경우에는 테스트 작업 과정에 장치 리소스 서비스 연결 시간 초과가 발생할 수 있다. 따라서, 엣지 장치에 연결 또는 임대한 후, 전자 장치에 좀비 장치, 즉 장치가 여전히 전자 장치에 연결되어 있지만, 상태가 오프라인 상태인 장치가 있는지 확인해야 한다. 만일 좀비 장치가 존재하면, 좀비 장치를 강제로 삭제하고 새로 임대한 장치 즉, 전술한 실시예의 유휴 엣지 장치를 재연결하며, 테스트 작업을 엣지 장치에 전송한다.
두번째 조작: 테스트 작업을 엣지 장치에 전송하기 전에 전자 장치의 유휴 포트를 동적으로 모니터링하고, 공간 포트와 엣지 장치를 바인딩한다.
만일 전자 장치에 복수의 원격 모바일 장치(예를 들어, Android 장치)가 동시에 연결되면, 전자 장치 포트가 선점된다. 따라서, 전자 장치의 유휴 포트를 동적으로 모니터링하여 모바일 장치와 동적으로 바인딩하고 통신한다. 대안적으로, 만일 테스트 작업이 다른 예상치 못한 이유로 리소스 서비스에 연결하지 못한 경우, 연결 실패 후 다시 연결하는 것과 같은 대응하는 감내 메커니즘이 제공된다.
세번째 조작: 테스트 작업을 엣지 장치로 전송하기 전에 엣지 장치에 자동화된 테스트 프레임 워크를 재설치한다.
Android 장치에 종종 uiautomator2 (Android 인터페이스 자동화 프레임 워크) 간헐적 시작 실패 상황이 발생할 수 있다. 따라서, 테스트 작업을 엣지 장치에 전송하기 전에 해당 리소스 장치에 연결하여 atx설치 캐시를 삭제하고, atx를 강제로 재설치하고 서비스를 시작한다. 만일 해당 방법을 통해 여전히 작동되지 않으면, 테스트 작업을 엣지 장치로 전송하기 전에 엣지 장치를 로컬로 연결하고 atx를 강제로 재설치한다.
네번째 조작: 테스트 작업을 엣지 장치에 전송한 후, 테스트 대상 모델의 설치 작업과 테스트 대상 모델에 대응하는 인증서의 신뢰 작업을 비동기적으로 실행한다.
iOS 장치에 인증서가 너무 많은 경우, 자동 신뢰 메커니즘의 안정성이 크게 저하되어 신뢰할 수 없는 ipa(iPhone 애플리케이션, Apple 애플리케이션 파일 형식)를 열 수 없으며, 즉 본 실시예의 테스트 대상 모델을 열 수 없다. 동시에, 인증서 신뢰는 테스트 대상 모델을 설치하는 일부이기 때문에, 설치 작업에 시간 초과가 발생한다. 따라서, 테스트 대상 모델의 인증서 신뢰와 설치 작업을 분할하고 인증서 신뢰를 비동기 작업 방식, 즉 테스트 대상 모델의 설치 작업과 대응하는 인증서의 신뢰 작업을 비동기 작업 방식으로 설정하며, 설치 작업을 실행하는 과정에서 인증서가 감지되면 신뢰 작업을 실행하고 인증서는 자동으로 신뢰된다. 본 조작은 설치에서 최종 실행까지 테스트 대상 모델의 정확도를 5% -10% 향상시키고, 단일 테스트 지연은 평균 1 분 단축된다.
다섯번째 조작: 엣지 장치에 의해 테스트 작업이 실행되는 과정에서 딥러닝 기반 대상 감지 모델을 통해 테스트 대상 모델의 팝업창을 감지하고 팝업창을 자동으로 트리거한다.
iOS 장치에서 테스트 대상 모델을 실행할 때, 종종 팝업창이 제대로 캡처되지 않아 테스트 작업의 실행이 실패할 수 있다. 따라서, EasyDL (맞춤형 인공 지능 훈련 및 서비스 플랫폼) 객체 감지 모델과 같은 딥러닝 기반 대상 감지 모델을 미리 훈련시킬 수 있다. 팝업창이 나타나는 페이지의 화면을 캡처하여 대상 감지 모델에 입력하여 팝업창 감지 결과, 버튼 위치 등을 획득함으로써, 작업 실행 중 팝업창 캡처의 정확성과 버튼 클릭 정확율을 향상시킨다.
여섯번째 조작: 테스트 작업을 엣지 장치에 전송한 후, 기본 제공 종속성 라이브러리에서 엣지 장치와 일치한 종속성을 선택하고, 엣지 장치와 일치한 종속성을 엣지 장치에 전송한다.
비 모바일 엣지 테스트 시나리오의 자동화에서 가장 큰 어려움은 비 모바일 엣지 장치 유형에 따라 시스템 요구 사항이 다르다는 것이다. 예를 들어, 종속 opencv 버전, cmake (설치 도구) 버전, 테스트 대상 모델의 실행 모드, 지원되는 딥러닝 프레임 워크 유형 및 버전 등이 동일하지 않다. 본 실시예는 서로 다른 비 모바일 엣지 장치 간의 자동화된 테스트 마이그레이션 비용을 최소화하기 위해 다음 방안을 사용한다.
도 3은 본 발명의 실시예에 따른 제3 엣지 컴퓨팅 테스트 방법의 흐름도이며, 단계S310 내지 단계S355를 포함한다.
S310, 엣지 모바일 플랫폼에서 테스트 대상 모델을 획득한다.
S320, 테스트 대상 모델에 따라 테스트 작업을 생성하며, 상기 테스트 작업은 테스트 대상 모델과 테스트 대상 모델을 수행하기 위한 자동화된 테스트 프로그램을 포함한다.
대안적으로, 본 실시예는 엣지 장치에 의해 지원되는 자동화된 테스트 프로그램을 전송하기 위해, Python 및 C ++와 같은 적어도 두가지 자동화된 테스트 프로그램을 지원한다.
S330, 엣지 장치에서 자동화된 테스트 프로그램을 실행하여 테스트 대상 모델을 실행하도록, 테스트 작업을 엣지 장치에 전송한다.
대안적으로, 단계S330전에, 서로 다른 비 모바일 엣지 장치에 의해 테스트 대상 모델이 실행될 때, 업스트림 테스트 작업에서 전달된 작업 정보에 따라 본 테스트 작업을 동적으로 일치시키는 단계를 더 포함한다. 상기 엣지 장치가 테스트 작업의 종속성 요구 사항을 만족하도록, 상기 업스트림 테스트 작업의 작업 정보에는 업스트림 테스트 작업의 종속성이 포함되지만 이에 제한되지 않는다.
S340, 엣지 장치에 종속성 라벨이 있는지 여부를 판단하고, 만일 존재하면, S351로 이동하며; 만일 존재하지 않으면, S352로 이동한다.
S351, 종속성 라벨에 대응하는 종속성을 엣지 장치에 전송한다. 계속하여 S360을 수행한다.
S352, 종속성은 기본 제공 종속성 라이브러리에서 버전 우선 순위가 높음에서 낮음 순으로 선택하며, 계속하여 S353을 수행한다.
복수의 딥러닝 프레임 워크 종속성과 같은 복수의 종속성을 포함하는 기본 제공 종속성 라이브러리를 사전 설정하고, 각 종속성에 대해 버전 우선 순위를 설정한다.
S353, 선택한 버전의 종속성이 엣지 장치와 일치한지 여부를 판단하고, 만일 일치하면 S356을 실행하고, 만일 일치하지 않으면 S354를 실행한다.
S354, 기본 제공 종속성 라이브러리에 선택되지 않은 종속성이 있는지 여부를 판단하며, 만일 존재하면 다시 S352를 실행하고, 존재하지 않으면 계속하여 S355를 실행한다.
S355, 외부에서 새 버전 종속성을 기본 제공 종속성 라이브러리로 다운로드하고, 되돌아가 S352를 실행한다.
S356, 선택된 버전 종속성을 엣지 장치에 전송한다. 계속하여 S360을 수행한다.
S360, 엣지 장치에 의한 테스트 작업의 실행 정보에 따라 테스트 결과를 생성한다.
본 실시예에서 종속성 라벨과 기본 제공 종속성 라이브러리를 통해 엣지 장치와 일치한 종속성을 선택함으로써, 엣지 장치의 테스트 자동화를 보장하고, 서로 다른 엣지 장치 간의 자동화된 테스트 마이그레이션 비용을 효과적으로 줄인다.
도 4a는 본 발명의 실시예에 따른 제4 엣지 컴퓨팅 테스트 방법의 흐름도이며, 본 발명의 실시예는 전술한 실시예의 기술 방안을 기반으로 최적화된다.
대안적으로, 테스트 작업을 엣지 장치에 전송하는 단계 후에 테스트 대상 모델에 대응하는 테스트 데이터 집합 및 통합 테스트 지표를 엣지 장치에 전송하는 단계를 추가한다.
대안적으로, 엣지 장치에 의한 테스트 작업의 실행 정보에 따라 테스트 결과를 생성하는 조작을 엣지 장치에 의한 테스트 작업의 실행 상태, 테스트 데이터 및 실패 원인, 테스트 대상 모델의 실행 결과, 사이트 정보, 엣지 장치의 정보 및 테스트 대상 모델의 설치 입구 중의 적어도 하나에 따라 테스트 결과를 생성하는 것으로 세분화할 수 있다.
도 4a에 도시된 엣지 컴퓨팅 테스트 방법은 단계S410 내지 단계S450을 포함할 수 있다.
S410, 엣지 모바일 플랫폼에서 테스트 대상 모델을 획득한다.
S420, 테스트 대상 모델에 따라 테스트 작업을 생성하며, 상기 테스트 작업은 테스트 대상 모델과 테스트 대상 모델을 수행하기 위한 자동화된 테스트 프로그램을 포함한다.
S430, 엣지 장치에서 자동화된 테스트 프로그램을 실행하여 테스트 대상 모델을 실행하도록, 테스트 작업을 엣지 장치에 전송한다.
S440, 테스트 대상 모델에 대응되는 테스트 데이터 집합 및 통합 테스트 지표를 엣지 장치에 전송한다.
상기 테스트 데이터 집합에는 테스트 대상 모델의 카테고리와 일치한 공개 테스트 데이터 집합(PublicData), 테스트 대상 모델이 속하는 테스트 프로젝트에 대응하는 비공개 테스트 데이터 집합(PrivateData), 테스트 프로젝트의 온라인 사용자 테스트 데이터 집합이 포함되며, 온라인 사용자 테스트 데이터 집합은 주로 테스트 대상 모델의 테스트 결과가 바람직하지 못한 데이터 집합(BadcaseData)이며, 모델 평가의 정확성을 향상하기 위해 사용된다.
구체적으로, 테스트 대상 모델의 카테고리에 따라, 예컨대 이미지 분류와 일치한 ImageNet2012 데이터 집합, 물체 감지 카테고리와 일치한 VOC 2007 및 coco2012 등 공개 테스트 데이터 집합이라고 하는 업계 공통 테스트 데이터 집합을 선택한다. 상기 ImageNet2012 데이터 집합은 시각적 개체 인식 소프트웨어 연구를 위한 대형 시각화 데이터베이스이다. VOC 2007 데이터 집합에는 트레이닝 집합(5011개 이미지), 테스트 집합(4952 개 이미지) 등 총 9963 개 이미지, 총 20 개 카테고리가 포함된다. coco2012 데이터 집합은 Microsoft 팀에서 얻은 이미지 인식, 세분화 및 설명에 사용할 수 있는 데이터 집합이다. 테스트 대상 모델이 속하는 테스트 프로젝트에 해당하는 비공개 테스트 데이터 집합과 데이터 집합의 수량은 테스트 프로젝트의 요구 사항에 따라 결정할 수 있다.
본 실시예의 테스트 데이터 집합은 상대적으로 중립적이며, 동시에 업계의 공통 테스트 데이터 집합, 비공개 테스트 데이터 집합 및 온라인 사용자 테스트 데이터 집합을 사용하여 모델의 수렴을 달성하고 평가의 공정성을 향상시킨다.
본 실시예에서, 통합 테스트 지표는 코어 엣지 컴퓨팅 장치 제조업체의 직원과 소통하고 딥러닝 모델의 알고리즘을 결부하여 정렬된 테스트 지표 및 스마트 시장 하드웨어 액세스 지표를 포함한다.
본 실시예의 통합 테스트 지표는 업계 공통 표준에 부합되며, 해당 테스트 지표를 전송함으로써 서로 다른 엣지 장치가 테스트 지표의 요구 사항을 만족하며; 동시에, 복수의 프로젝트가 테스트 결과를 서로 승인하여 테스트를 수행하는데 유리하며, 테스트 결과가 충분한 설득력을 갖는다.
S450, 엣지 장치에 의한 테스트 작업의 실행 상태, 테스트 데이터 및 실패 원인, 테스트 대상 모델의 실행 결과, 사이트 정보, 엣지 장치의 정보 및 상기 테스트 대상 모델의 설치 입구 중의 적어도 하나에 따라 테스트 결과를 생성한다.
대안적으로, 단계S450 전에, 테스트 대상 모델의 복수의 실행 결과를 획득하는 단계; 복수의 실행 결과에서 지정된 횟수의 실행 결과를 삭제하여 남은 횟수의 실행 결과를 획득하는 단계; 및 남은 횟수의 실행 결과에 따라 테스트 대상 모델의 실행 결과를 생성하는 단계; 를 더 포함한다.
구체적으로, 자동화된 테스트 프로그램을 통해 엣지 장치에서 테스트 대상 모델을 여러번 실행한다. 테스트 대상 모델은 실행 시작 시에 공간 할당과 같은 일련의 예열 작업이 필요하여 이전 실행 결과가 바람직하지 못하기 때문에, 이전 실행 횟수의 실행 결과를 삭제할 수 있는데, 실행 결과의 품질 요구 사항에 따라 3 회 또는 5 회로 지정할 수 있다. 나머지 실행 횟수의 실행 결과의 평균을 구하여 테스트 대상 모델의 실행 결과를 얻을 수 있다.
도 4b는 본 발명의 실시예에 따른 모델 테스트 과정의 개략적인 흐름도이다. 전자 장치에서 테스트 도구가 실행된다. 테스트 도구는 딥러닝 모델, 테스트 데이터 집합, 테스트 매개 변수 및 테스트 지표를 획득하며, 상기 딥러닝 모델에는 테스트 대상 모델과 종속성 드라이버가 포함된다. 테스트 매개 변수에는 테스트 기간, 안정성 매개 변수, 각 입력에 대한 실행 횟수 및 일관성 매개 변수가 포함된다. 테스트 도구는 엣지 장치 클러스터에 액세스하고, 유휴 엣지 장치를 획득하며, 획득한 딥러닝 모델, 테스트 데이터 집합 및 테스트 지표를 유휴 엣지 장치에 전송한다. 테스트 도구는 유휴 엣지 장치에서 각 지표의 단일 실행 결과를 얻는다. 테스트 매개 변수가 모두 임계값에 도달하면 각 테스트 지표의 실행 결과 평균값을 계산하며, 예를 들어, 각 테스트 지표의 지정된 이전 실행 결과를 삭제한 후, 나머지 실행 결과에 대해 평균값, 값의 변화 추세, 엣지 장치 간의 지표 차이 등을 계산하여 테스트 결과를 생성한다.
S450에서 테스트 작업의 실행 상태에는 통과, 실패, 오류 및 건너 뛰기가 포함된다. 테스트 데이터는 시작 시간 및 지속 시간과 같은 테스트 과정에 생성된 데이터이다. 엣지 장치의 정보에는 엣지 장치의 네트워크 주소, 장치의 고유 식별자 등이 포함된다. 실패 이유는 테스트 작업의 실행에 실패한 경우에 적용되며, 오류 유형 및 오류 메시지를 포함한다. 화면에는 테스트 대상 모델을 실행하는 과정의 사이트 캡처가 포함된다.
도 4c는 본 발명의 실시예에 따른 테스트 결과의 개략도이다. 개략도 상단의 테스트 결과 (Test Result)에는 시작 시간 (Start Time), 지속 시간 (Duration), 실행 상태 (Status) 및 각 실행 상태에 대응하는 횟수가 포함된다. 상기 실행 상태에는 통과(Pass), 실패(Fail), 오류(Error) 및 건너 뛰기(Skip)가 포함된다.
도 4c에서 테스트 대상 모델은 대상 식별 모델이다. 도 4c는 오류 유형을 나타내며, 즉, 유형 오류(TypeError), 오류 메시지 : 목록 색인은 문자열이 아닌 정수 또는 슬라이스 (list indices must be integers or slices, not str) 및 사이트 캡처이여야 한다. 테스트 대상 모델의 실행 결과는 아래측에 표시한 바와 같으며, 즉 해당 대상 식별 모델의 식별 결과는 산 얼룩말(Mountain_Zebra)로 식별된 신뢰성 및 얼룩말(Zebra)로 식별된 신뢰성을 포함한다.
또한, 도 4c의 오른쪽에는 엣지 장치(즉, 도 4c의 테스트 장치)의 ID, 전체 테스트 과정 화면 녹화 및 테스트 사진이 표시되며, 검토자가 점진적으로 장면을 복구하도록 지원한다.
도 4d는 본 발명의 실시예에 따른 다른 테스트 결과의 개략도이다. 도 4d는 각 테스트 대상 모델의 빠른 설치 입구를 제공한다. 모바일 시나리오의 경우, 모델 설치를 위한 QR 코드 정보를 제공한다. 비 모바일 시나리오의 경우, 관련 담당자가 검토 시에 모델을 신속하게 설치하여 2차 확인을 수행할 수 있도록, 다운로드 가능한 모델 저장 주소가 제공된다. 도 4d에 표시된 테스트 대상 모델에는 InceptionV2 + arm, VGG19 + arm, VGG16 + arm 및 YoloV3 + arm이 포함된다. 또한, 테스트 대상 모델의 QR코드 정보와 SDK 저장소 주소가 표시된다.
또한, 관련 담당자의 검토 상 편의를 위해, 도 4d에는 실행 결과가 표시되는데, 즉, 테스트 실패, 엣지 장치에 장착된 시스템은 Android 이고, 소스 프레임 워크는 유동(fluid) 프레임 워크이다. 또한, 도 4d에는 테스트 과정에 각 테스트 대상 모델의 글로벌 추적 항목, 테스트 세부 정보 항목 및 변환 세부 정보 항목이 표시된다. 대안적으로, 글로벌 추적 입구의 트리거 조작에 응답하여 테스트 대상 모델의 전체 테스트 과정에 대한 화면 녹화 기록을 표시하며; 테스트 세부 항목 입구의 트리거 조작에 응답하여 테스트 대상 모델의 실행 상태, 테스트 데이터 및 실패 이유를 표시하며; 변환 세부 사항 입구의 트리거 조작에 응답하여 클라우드 모델에서 테스트 대상 모델로 변환되는 각 단계의 상태 정보가 표시된다.
본 실시예에서, 프로젝트 전반에 걸쳐 테스트 대상 모델에 대한 테스트를 수행할 때, 외부 종속성, 테스트 데이터 집합, 지표 등은 재사용이 가능하다. 외부 종속성에 대해서는 전술한 실시예에서 제공한 기본 제공 종속성 라이브러리를 통해 제공하며, 기본 제공 종속성 라이브러리는 동적으로 추가 및 삭제가 가능하다. 지표 및 테스트 데이터 집합의 경우, 동적으로 추가 또는 삭제할 수 있는 입구가 구성되어 다양한 프로젝트 요구 사항에 빠르게 적응할 수 있다. 따라서, 본 실시예에서 제공되는 방법은 테스트가 필요한 다른 프로젝트로 동적으로 마이그레이션될 수 있다.
본 실시예에서 생성된 테스트 결과는 작업 상태 및 사이트를 유지하여 작업 실행의 안정성과 용이한 유지 관리를 효과적으로 보장한다.
도 5a는 본 발명의 실시예에 따른 제5 엣지 컴퓨팅 테스트 방법의 흐름도이며, 본 발명의 실시예는 전술한 실시예의 기술 방안을 기반으로 테스트 대상 모델의 생성 조작에 대해 최적화한다. 대안적으로, 엣지 모바일 플랫폼에서 테스트 대상 모델을 획득하는 단계 전에, 클라우드 모델이 테스트 대상 모델로 변환되는 각 단계의 작업 흐름에 대해 모니터링, 시각적 표시 및 중단점 시작/중지 중의 적어도 하나의 조작을 수행한다.
도 5a에 따른 방법은 구체적으로 단계S510 내지 단계S570을 포함한다.
S510, 클라우드 모델이 테스트 대상 모델로 변환되는 각 단계의 작업 흐름에 대해 모니터링한다.
엣지 모바일 플랫폼은 클라우드 모델을 테스트 대상 모델로 변환하기 위해 사용되며, 다단계 작업 흐름(work flow)의 구현을 통해 변환이 수행된다. 다단계 작업 흐름은, 1) 변환 단계: 세분화된 작업(po)을 기반으로 클라우드 모델의 프레임 워크(즉, 딥러닝 프레임 워크)를 변환하여 테스트 대상 모델의 프레임 워크를 얻으며; 2) 압축 단계: 엣지 장치의 용량과 메모리가 제한되어 있기 때문에, 테스트 모델이 가능한 작아야 하며; 3) 모델의 호환성 및 모델 가속: 엣지 컴퓨팅 모델의 실시간 성능은 가능한 많은 엣지 장치와 호환되어야 하며, 상기 호환성은 주로 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(Graphics Processing Unit, GPU), 필드 프로그래밍 가능 게이트 어레이(Field Programmable Gate Array, FPGA) 및 신경망 처리 장치(Neural-network Processing Unit, NPU)와의 호환성을 가리키며; 4) 모델 패키징: 엣지 장치에 적용될 수 있는 라이브러리, SDK 및 binary 파일로 패키징되며; 5) 오프라인 서비스 호스팅, 라이선스(license) 관리 등 주문형 플랫폼 지원 서비스 제공; 6) 사용자 시나리오에 적합한 비 모바일 엣지 장치를 권장하여 사용자가 입문하여 사용할 수 있는 문턱을 최대한 낮추는 것을 포함한다.
본 실시예는 초기 크로스 프레임 변환에서 최종 모델 패키징까지 전체 작업 흐름 과정을 모니터링하여 각 단계 작업 흐름의 상태 정보 및 사이트를 획득한다. 상기 초기 크로스 프레임 변환에서 최종 모델 패키징까지 전체 작업 흐름은 프레임 변환 단계, 압축 단계, 호환성 단계, 가속 단계 및 패키징 단계 등 여러 단계가 포함된다.
각 단계의 작업 흐름의 상태 정보와 사이트를 실시간으로 모니터링하려면 실시간 폴링 모니터링 서비스를 시작하여 각 단계의 로그를 모니터링하고 각 단계의 입출력 정보를 저장해야 한다. 각 단계의 로그 및 입출력 정보에 따라 각 단계의 작업 흐름의 상태 정보를 얻고 각 단계의 작업 흐름의 사이트를 복원한다.
S520, 클라우드 모델이 테스트 대상 모델로 변환되는 각 단계의 작업 흐름을 시각적으로 표시한다.
구체적으로, 각 단계의 작업 흐름의 상태 정보와 사이트를 실시간으로 시각적으로 표시한다.
S530, 클라우드 모델이 테스트 대상 모델로 변환되는 각 단계의 작업 흐름에 대해 중단점 시작/중지를 수행한다.
구체적으로, 각 단계에 대해 작업 태그를 지정하여 사용자의 단계의 시작 또는 중지 조작에 응답하며, 만일 해당 작업이 작업 태그를 포함하면 해당 단계의 시작 또는 중지 동작이 실행된다.
S540, 엣지 모바일 플랫폼에서 테스트 대상 모델을 획득한다.
S550, 테스트 대상 모델에 따라 테스트 작업을 생성하며, 상기 테스트 작업은 테스트 대상 모델과 테스트 대상 모델을 수행하기 위한 자동화된 테스트 프로그램을 포함한다.
S560, 엣지 장치에서 자동화된 테스트 프로그램을 실행하여 테스트 대상 모델을 실행하도록, 테스트 작업을 엣지 장치에 전송한다.
S570, 엣지 장치에 의한 테스트 작업의 실행 정보에 따라 테스트 결과를 생성한다.
하나의 적용 시나리오에서, AirFlow와 같은 분산 작업 스케줄링 프레임 워크를 사용하여 클라우드 모델을 테스트 대상 모델로 변환하는 압축, 호환성, 가속 및 패키징 단계를 모니터링하여 해당 단계의 상태 정보 및 사이트를 얻는다. 동시에, 전술한 단계의 작업 흐름의 상태 정보와 사이트에 대해 시각적 표시 및 중단점 시작/중지를 수행한다.
AirFlow는 프로그래밍, 예약 및 모니터링이 가능한 워크 플로 플랫폼으로, 방향성 비순환 그래프를 기반으로 종속성 작업을 정의하고 종속성에 따라 차례로 실행할 수 있다. 동시에, 시스템 관리 및 제어를 위한 풍부한 명령줄 도구를 제공하며, 또한 웹 관리 인터페이스는 예약 작업을 쉽게 관리 및 제어할 수 있고, 작업 상태 정보 및 사이트에 대해 실시간으로 모니터링함으로써, 시스템의 운영, 유지 및 관리가 편리하고, 시각적으로 표시할 수 있다. 이를 기반으로, 본 실시예에서는 클라우드 모델을 테스트 대상 모델로 변환하는 압축, 호환성, 가속, 패키징 단계의 일련의 작업을 정의하고, 명령줄 도구를 통해 각 단계에 대해 작업 태그를 지정하여 중단점 시작/중지를 구현할 수 있다.
도 5b는 본 발명의 실시예에 따른 AirFlow의 방향성 비순환 그래프 목록의 개략도이다. 도면에서 (1) 작업 시작/중지 스위치, (2) 작업 실행 상태, (3) 실행 대기 또는 배포되지 않은 작업, (4) 수동으로 실행할 작업, (5) 작업 관리 인터페이스 입구를 표시한다. 도 5c는 본 발명의 실시예에 따른 AirFlow의 방향성 비순환 그래프를 나타낸 도면이며, 각 단계의 작업 간의 종속성 관계를 나타낸다. 도 5d는 본 발명의 실시예에 따른 AirFlow의 각 단계의 작업 상태 검토 및 중단점 시작/중지의 제어를 나타낸 개략도이다. 도면에서, View Log 는 작업 로그 조회; Run은 선택된 작업 실행; Clear은 작업 대기열 지우기; Mark Failed은 작업을 실패한 상태로 표시; Mark Success는 작업을 성공한 상태로 표시한다. 상기 Clear, Mark Failed 및 Mark Success에는 모두 과거 작업, 향후 작업, 업스트림 작업 및 다운 스트림 작업이 포함되며, Clear에는 반복 작업도 포함된다.
본 실시예는 AirFlow의 분산 실행기를 사용하여 동시에 여러 병렬 작업을 예약하며, 해당 오픈 소스 프레임 워크를 사용하여 여러 복잡한 작업의 실시간 모니터링, 중단점 시작/중지 및 시각적 표시와 같은 핵심 문제를 효과적으로 해결함으로써, 많은 인력 및 시간 비용을 절약한다.
대안적으로, 모델 변환 미러 라이브러리에서 생성된 로그를 캡처하고, 캡처된 로그를 시각적으로 표시하며, 상기 모델 변환 미러 라이브러리는 클라우드 모델의 프레임 워크를 테스트 대상 모델의 프레임 워크로 변환하기 위해 사용된다.
설명을 용이하게 하기 위해, 먼저 프레임 변환 단계에 대해 설명한다. 본 실시예는 모델 저장소를 기본적으로 제공하며, 상기 모델 저장소는 기본 내장 모델 저장소로도 불리우고, 사용자 자체로 훈련한 딥러닝 모델 또는 다른 딥러닝 훈련 플랫폼의 사용자 자체로 인코딩한 훈련 모델과 같은 클라우드 모델을 저장하기 위해 사용된다. 이와 동시에, Easy Edge 하위 계층의 모델 변환 서비스를 기반으로 Easy Edge 고유의 비즈니스 로직을 분리한 후, 최적화 및 조정된 로직을 추가하여 최종적으로 멀티 프레임 변환을 지원하는 툴 세트를 구현한다. 상기 Easy Edge는 바이두가 Paddle Mobile를 기반으로 개발한 단말 컴퓨팅 모델 생성 플랫폼으로서, 다양한 딥러닝 프레임 워크 및 네트워크 구조를 기반으로 하는 모델을 지원하며, 단말 컴퓨팅 모델과 패키지 SDK를 빠르게 생성한다. 상기 도구의 핵심은 모델 변환 미러 라이브러리라고 하는 docker(애플리케이션 컨테이너 엔진) 미러 라이브러리이며, 원본 프레임에서 대상 프레임의 모델의 변환을 신속하게 실현할 수 있으며, 지원되는 변환 조합의 수는 Easy Edge 온라인과 동시에 업데이트된다.
도 5e는 본 발명의 실시예에 따른 프레임 워크 변환 로직의 개략도이다. 기본 제공 모델 저장소(model_zoo)에서 클라우드 모델의 프레임 워크 또는 네트워크를 입력하고, 테스트 대상 모델의 대상 프레임 워크 또는 시스템 온칩을 입력한다. 상기 도구에 의해 지원되는 프레임 워크 변환 구성 테이블을 통해 해당 조건에서의 변환이 지원되는지 여부를 판단한다. 만일 지원되면, 모델 변환 미러 라이브러리(복수의 미러 이미지 포함)의 모델 변환 실행기를 사용하여 변환을 수행한다. 모델 변환이 성공하면, 계속해서 모델을 압축, 호환, 가속 및 패키징한 다음 모델 테스트 단계로 들어간다. 모델 변환에 실패하면, 변환 횟수가 임계값에 도달했는지 여부를 판단하고, 횟수가 임계값 (예를 들어, 3)에 도달하지 않으면 모델 변환 미러 라이브러리의 모델 변환 실행기를 사용하여 다시 변환을 수행하며, 횟수에 도달하면, 입력된 변환 조건과 모델에 오류가 있는지 확인한다.
해당 도구를 기반으로 테스터는 다음의 사항만 준비하면 된다. 즉, 1) 기본 제공 모델 저장소에 수요되는 클라우드 모델이 있는 경우, 자동으로 다운로드한다. 그렇지 않으면, 공식 웹 사이트에서 지정된 네트워크의 모델을 다운로드하거나 딥러닝 학습 플랫폼을 기반으로 자체로 모델을 훈련시킨다. 2) 테스트 대상 모델의 프레임 워크로 변환해야 하는 경우, 해당 도구를 사용하여 자동 프레임 변환을 수행 후, 계속해서 모델을 압축, 호환, 가속 및 패키징 등 처리를 수행한다.3) 본 실시예에서 제공되는 엣지 컴퓨팅 테스트 방법을 사용하여 테스트를 수행하여 테스트 대상 모델의 테스트 결과를 얻는다.
프레임 워크 변환 단계의 작업 흐름에 대한 모니터링의 경우, 클라우드 모델의 딥러닝 프레임 워크에서 테스트 대상 모델의 프레임 워크로 변환하기 때문에, 프레임 워크 전체에 걸쳐 종종 여러번 변환을 수행하게 된다. 해당 부분의 모니터링은 프레임 워크 변환 단계의 모든 중간 단계와 각 단계 변환의 실시간 로그를 빠르게 파악해야 한다. 이를 기반으로, 모델 변환 미러 라이브러리에서 실시간으로 로그를 캡처하여 로그를 추출(extract), 변환(transform),로드(load)하고, 로드된 로그에서 관심을 갖는 핵심 정보를 추출하여 핵심 정보를 시각적으로 표시한다.
본 실시예에서, 클라우드 모델이 상기 테스트 대상 모델로 변환되는 각 단계의 작업 흐름에 대해 모니터링, 시각적 표시 및 중단점 시작/중지 중의 적어도 하나의 조작을 수행함으로써, 모델 변환 작업 흐름의 각 단계의 유효성과 정확성을 보장하고, 엣지 장치에 의해 최종 출력된 대상 모델의 사용성, 효과 및 성능을 보장한다.
또한, 분산 작업 스케줄링 프레임 워크를 사용하여 클라우드 모델이 테스트 대상 모델로 변환되는 압축, 호환성, 가속 및 패키징 단계의 작업 흐름에 대해 모니터링, 시각적 표시 및 중단점 시작/중지를 수행함으로써, 테스트 인력을 효과적으로 절약하고 테스트 시간을 절약하며 테스트 대상 모델의 온라인 검증 효율을 크게 향상시킨다.
또한, 모델 변환 미러 라이브러리를 설정하여 일부 공통 딥 모델을 대상 딥러닝 프레임 워크의 모델로 빠르게 변환하여 다양한 적용 시나리오 및 다양한 엣지 장치의 호환성과 정확성을 테스트할 수 있다. 모델 평가를 위한 번잡한 준비 작업을 피할 수 있다.
본 발명의 각 실시예에 대한 설명에 따르면, 다른 딥러닝 엣지 컴퓨팅 시나리오의 프로젝트 테스트에 신속하게 재사용할 수 있어 테스트 분기가 방대하고 테스트 효율이 낮으며 테스트 시나리오가 복잡한 등 주요 문제를 효과적으로 해결한다. 동시에, 엣지 장치의 사설 클러스터도 직접 다른 엣지 컴퓨팅 테스트가 아닌 시나리오를 위해 서비스를 제공할 수 있다. 딥러닝 모델 테스트의 경우에도 많은 시간을 절약하고 테스트 효율을 향상시켜 테스터가 사전 테스트 준비 및 테스트 로직이 아닌 평가 지표의 결과 데이터에만 관심을 가질 수 있도록 한다. 이는 엣지 컴퓨팅 프로젝트 테스트 및 하드웨어 장치(즉, 비 모바일 엣지 장치)에서 모델 평가를 수행하는 공백을 메웠다.
본 발명의 실시예에서, 도 6은 본 발명의 실시예에 따른 엣지 컴퓨팅 테스트 장치의 구조도이며, 본 발명의 실시예는 엣지 장치에서 엣지 모바일 플랫폼 중의 모델의 사용성 및 정확성을 테스트하는 경우에 적용되며, 상기 장치는 소프트웨어 및/또는 하드웨어로 구현되며 구체적으로 일정한 데이터 연산 능력을 갖춘 전자 장치에 구성된다.
도 6에 도시된 엣지 컴퓨팅 테스트 장치(600)는 획득 모듈(601), 작업 생성 모듈(602), 전송 모듈(603) 및 결과 생성 모듈(604)을 포함하여 구성되며,
상기 획득 모듈(601)은 엣지 모바일 플랫폼에서 테스트 대상 모델을 획득하기 위해 사용되며;
상기 작업 생성 모듈(602)은 테스트 대상 모델에 따라 테스트 작업을 생성하기 위해 사용되며, 상기 테스트 작업은 테스트 대상 모델과 테스트 대상 모델을 수행하기 위한 자동화된 테스트 프로그램을 포함하며;
상기 전송 모듈(603)은 엣지 장치에서 자동화된 테스트 프로그램을 실행하여 테스트 대상 모델을 실행하도록, 테스트 작업을 엣지 장치에 전송하기 위해 사용되며;
상기 결과 생성 모듈(604)은 엣지 장치에 의한 테스트 작업의 실행 정보에 따라 테스트 결과를 생성하기 위해 사용된다.
본 발명의 실시예에서, 엣지 모바일 플랫폼에서 테스트 대상 모델을 획득하고, 테스트 모델에 따라 테스트 작업을 자동으로 생성하고, 테스트 작업을 엣지 설비에 자동으로 전송하며, 또한 엣지 장치에 의한 테스트 작업의 실행 정보에 따라 테스트 결과를 자동으로 생성함으로써, 테스트 대상 모델의 사용성과 정확성에 대한 자동화된 테스트 과정을 구현하며, 테스트 자동화 정도와 효율을 향상시킨다.
또한, 전송 모듈(603)은 구체적으로, 1) 동일한 테스트 작업을 서로 다른 엣지 장치에 전송하는 조작; 2) 테스트 작업을 엣지 장치에 전송하여 클라우드에서 테스트 대상 모델에 대응하는 클라우드 모델을 실행하는 조작; 3) 서로 다른 테스트 모델이 포함된 서로 다른 테스트 작업을 동일한 엣지 장치에 전송하는 조작; 및 4) 테스트 작업을 테스트 작업의 테스트 시나리오와 일치한 엣지 장치에 전송하는 조작; 을 수행하며, 상기 테스트 시나리오는 모바일 시나리오 및 비 모바일 시나리오를 포함한다.
또한, 상기 장치는 테스트 작업의 테스트 시나리오에 대응하는 엣지 장치 클러스터의 인터페이스에 액세스하여 엣지 장치 클러스터에 의해 피드백된 유휴 엣지 장치를 획득하고 유휴 엣지 장치를 연결하기 위한 액세스 및 연결 모듈을 더 포함하며, 상기 엣지 장치 클러스터는 모바일 엣지 장치 클러스터 및 비 모바일 엣지 장치 클러스터를 포함한다. 이에 따라, 전송 모듈(603)은 구체적으로 테스트 작업을 상기 유휴 엣지 장치에 전송하기 위해 사용된다.
또한, 상기 장치는 중간 프록시 서버를 통해 비 모바일 엣지 장치 클러스터 중의 각 비 모바일 장치에 네트워크 주소를 제공하기 위한 제공 모듈을 더 포함하며, 액세스 및 연결 모듈은 유휴 엣지 장치를 연결할 때, 구체적으로 비 모바일 엣지 장치 클러스터 중의 유휴 엣지 장치의 네트워크 주소를 연결한다.
또한, 상기 장치는 테스트 작업 이력에 대해 릴리스 및 백업 중의 적어도 한가지 조작을 수행하기 위한 릴리스 및 백업 모듈, 및 테스트 작업의 실행 상태와 로그의 일관성 확인을 수행하기 위한 일관성 확인 모듈을 더 포함한다.
또한, 상기 장치는 전자 장치의 좀비 장치를 삭제하기 위한 삭제 모듈과, 전자 장치의 유휴 포트를 동적으로 모니터링하고 공간 포트와 엣지 장치를 바인딩하기 위한 바인딩 모듈과, 엣지 장치에 자동화된 테스트 프레임 워크를 재설치하기 위한 프레임 워크 재설치 모듈을 더 포함한다.
또한, 상기 장치는 테스트 대상 모델의 설치 작업과 테스트 대상 모델에 대응하는 인증서의 신뢰 작업을 비동기적으로 실행하는 비동기적 실행 모듈과, 엣지 장치에 의해 테스트 작업이 실행되는 과정에서 딥러닝 기반 대상 감지 모델을 통해 테스트 대상 모델의 팝업창을 감지하고 팝업창을 자동으로 트리거하는 팝업창 트리거 모듈과, 기본 제공 종속성 라이브러리에서 엣지 장치와 일치한 종속성을 선택하고 엣지 장치와 일치한 종속성을 엣지 장치에 전송하는 종속성 전송 모듈; 을 더 포함한다.
또한, 상기 장치는 테스트 대상 모델에 대응되는 테스트 데이터 집합 및 통합 테스트 지표를 엣지 장치에 전송하기 위한 데이터 집합 및 지표 전송 모듈을 더 포함하며, 상기 테스트 데이터 집합은 테스트 대상 모델의 카테고리와 일치한 공개 테스트 데이터 집합과, 테스트 대상 모델이 속하는 테스트 프로젝트에 대응하는 비공개 테스트 데이터 집합과, 테스트 프로젝트의 온라인 사용자 테스트 데이터 집합을 포함한다.
또한, 결과 생성 모듈(604)은 구체적으로, 엣지 장치에 의한 테스트 작업의 실행 상태, 테스트 데이터 및 실패 원인, 테스트 대상 모델의 실행 결과, 사이트 정보, 엣지 장치의 정보 및 상기 테스트 대상 모델의 설치 입구 중의 적어도 하나에 따라 테스트 결과를 생성한다.
또한, 상기 장치는 테스트 대상 모델의 복수의 실행 결과를 획득하며, 복수의 실행 결과에서 지정된 횟수의 실행 결과를 삭제하여 남은 횟수의 실행 결과를 획득하며, 남은 횟수의 실행 결과에 따라 테스트 대상 모델의 실행 결과를 생성하는 실행 결과 생성 모듈을 더 포함한다.
또한, 상기 장치는 클라우드 모델이 테스트 대상 모델로 변환되는 각 단계의 작업 흐름에 대해 모니터링, 시각적 표시 및 중단점 시작/중지 중의 적어도 하나의 조작을 수행하기 위한 조작 모듈; 을 더 포함한다.
또한, 조작 모듈은 구체적으로 분산 작업 스케줄링 프레임 워크를 사용하여 클라우드 모델이 테스트 대상 모델로 변환되는 압축, 호환성, 가속 및 패키징 단계의 작업 흐름에 대해 모니터링, 시각적 표시 및 중단점 시작/중지를 수행하며, 모델 변환 미러 라이브러리에서 생성된 로그를 캡처하고, 캡처된 로그를 시각적으로 표시하며, 상기 모델 변환 미러 라이브러리는 클라우드 모델의 프레임 워크를 테스트 대상 모델의 프레임 워크로 변환하기 위해 사용된다.
상기 엣지 컴퓨팅 테스트 장치는 본 발명의 임의의 실시예에 따른 엣지 컴퓨팅 테스트 방법을 수행할 수 있으며, 엣지 컴퓨팅 테스트 방법을 수행하기 위한 기능 모듈 및 유익한 효과를 갖는다.
본 발명의 실시예에 따르면, 본 발명은 또한 전자 장치 및 판독 가능한 저장 매체를 제공한다.
도 7은 본 발명의 실시예의 엣지 컴퓨팅 테스트 방법을 구현하기 위한 전자 장치의 블록도이다. 전자 장치는 랩톱 컴퓨터, 데스크톱 컴퓨터, 워크 스테이션, 개인 디지털 비서, 서버, 블레이드 서버, 메인 프레임 컴퓨터 및 기타 적합한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 가리킨다. 전자 장치는 개인용 디지털 처리, 휴대폰, 스마트 폰, 웨어러블 장치 및 기타 유사한 컴퓨팅 장치와 같은 다양한 형태의 모바일 장치를 가리킬 수도 있다. 본 명세서에 표시된 구성 요소, 이들의 연결 및 관계, 및 그 기능은 단지 예시일 뿐이며, 본 명세서에서 설명된 및/또는 요구되는 발명의 구현을 제한하려는 것이 아니다.
도 7에 도시된 바와 같이, 상기 전자 장치는 하나 이상의 프로세서(701), 메모리(702) 및 고속 인터페이스와 저속 인터페이스를 포함하는 각 구성 요소를 연결하기 위한 인터페이스를 포함한다. 각 구성 요소는 서로 다른 버스에 의해 서로 연결되고, 공통 마더 보드에 설치되거나 필요에 따라 다른 방식으로 설치될 수 있다. 프로세서는 메모리에 저장되어 외부 입력/출력 장치(예를 들어, 인터페이스에 연결된 디스플레이 장치)에 GUI의 그래픽 정보를 표시하기 위한 명령어를 포함하는 전자 장치에 의해 실행되는 명령어를 처리할 수 *?*있다. 다른 실시예에서, 필요한 경우, 다중 프로세서 및/또는 다중 버스를 다중 메모리와 함께 사용할 수 있다. 마찬가지로, 여러 전자 장치를 연결할 수 있으며, 각 장치는 필요한 작업의 일부분(예를 들어, 서버 어레이, 블레이드 서버 그룹 또는 다중 프로세서 시스템)을 제공할 수 있다. 도 7은 프로세서(701)가 하나인 경우를 예를 들어 나타낸 것이다.
메모리(702)는 본 발명에 따라 제공되는 비 일시적 컴퓨터 판독 가능 저장 매체이다. 적어도 하나의 프로세서를 통해 본 발명의 엣지 컴퓨팅 테스트 방법을 수행할 수 있도록, 메모리에는 적어도 하나의 프로세서에 의해 실행 가능한 명령어가 저장된다. 본 발명의 비 일시적 컴퓨터 판독 가능 저장 매체에는 컴퓨터가 본 발명의 엣지 컴퓨팅 테스트 방법을 수행하도록 컴퓨터 명령어가 저장된다.
비 일시적 컴퓨터 판독 가능 저장 매체로서, 메모리(702)는 본 발명의 실시예의 엣지 컴퓨팅 테스트 방법에 대응하는 프로그램 명령/모듈(예를 들어,도 6에 도시된 획득 모듈(601), 작업 생성 모듈(602), 전송 모듈(603) 및 결과 생성 모듈(604))과 같은 비 일시적 소프트웨어 프로그램, 비 일시적 컴퓨터 실행 가능 프로그램 및 모듈을 저장하기 위해 사용된다. 프로세서(701)는 메모리(702)에 저장된 비 일시적 소프트웨어 프로그램, 명령어 및 모듈을 실행함으로써, 서버의 다양한 기능 애플리케이션 및 데이터 처리를 실행한다. 즉, 상기 방법 실시예의 엣지 컴퓨팅 테스트 방법을 구현한다.
메모리(702)는 프로그램 저장 영역 및 데이터 저장 영역을 포함할 수 있으며, 프로그램 저장 영역에는 운영 체제, 적어도 하나의 기능에 필요한 응용 프로그램이 저장될 수 있고, 데이터 저장 영역에는 엣지 컴퓨팅 테스트 방법을 구현하기 위한 전자 장치의 사용에 따라 생성된 데이터가 저장될 수 있다. 또한, 메모리(702)는 고속 랜덤 액세스 메모리를 포함할 수 있으며, 적어도 하나의 자기 디스크 저장 장치, 플래시 메모리 장치 또는 기타 비 일시적 고체 상태 저장 장치와 같은 비 일시적 메모리를 포함할 수도 있다. 일부 실시예에서, 메모리(702)는 프로세서(701)에 대해 원격으로 제공되는 메모리를 선택적으로 포함할 수 있으며, 이러한 원격 메모리는 네트워크를 통해 엣지 컴퓨팅 테스트 방법을 구현하기 위한 전자 장치에 연결될 수 있다. 상기 네트워크의 예는 인터넷, 기업 인트라넷, 근거리 통신망, 이동 통신 네트워크 및 이들의 조합을 포함하지만 이에 제한되지 않는다.
엣지 컴퓨팅 테스트 방법을 수행하기 위한 전자 장치는 입력 장치(703) 및 출력 장치(704)를 더 포함할 수 있다. 프로세서(701), 메모리(702), 입력 장치(703) 및 출력 장치(704)는 버스에 의해 연결되거나 또는 다른 방식으로 연결될 수 있으며, 도 7은 버스에 의한 연결을 예를 들어 나타낸 것이다.
입력 장치(703)는 입력된 숫자 또는 문자 정보를 수신하고, 엣지 컴퓨팅 테스트 방법을 구현하기 위한 전자 장치의 사용자 설정 및 기능 제어와 관련된 키 신호 입력을 생성할 수있으며, 예를 들어, 터치 스크린, 키패드, 마우스, 트랙 패드, 터치 패드, 표시기 스틱, 하나 이상의 마우스 버튼, 트랙볼, 조이스틱 및 기타 입력 장치를 포함할 수 있다. 출력 장치(604)는 디스플레이 장치, 보조 조명 장치 (예를 들어, LED), 촉각 피드백 장치(예를 들어, 진동 모터) 등을 포함할 수 있다. 상기 디스플레이 장치는 액정 디스플레이(LCD), 발광 다이오드(LED) 디스플레이 및 플라즈마 디스플레이를 포함할 수 있지만, 이에 제한되지 않는다. 일부 실시예에서, 디스플레이 장치는 터치 스크린일 수 있다.
본 출원의 실시예에 따르면, 컴퓨터 판독 가능 매체에 저장되어 있는 컴퓨터 프로그램을 더 제공한다. 당해 컴퓨터 프로그램의 명령어가 실행될 경우, 본 출원 실시예의 엣지 컴퓨팅 테스트 방법이 실행된다.
본 명세서에 설명된 시스템 및 기술의 다양한 구현은 디지털 전자 회로 시스템, 집적 회로 시스템, 주문형ASIC(주문형 집적 회로), 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합을 통해 구현될 수 있다. 이러한 다양한 구현 방식은 다음을 포함할 수 있다. 즉, 적어도 하나의 프로그래밍 가능 프로세서를 포함하는 프로그래밍 가능 시스템에서 실행 및/또는 해석될 수 있는 하나 이상의 컴퓨터 프로그램에서 구현되며, 상기 프로그래밍 가능 프로세서는 전용 또는 일반 프로그래밍 가능 프로세서일 수 있으며, 저장 시스템, 하나 이상의 입력 장치 및 하나 이상의 출력 장치에서 데이터 및 명령어를 수신할 수 있고,데이터 및 명령을 상기 저장 시스템, 상기 적어도 하나의 입력 장치 및 상기 적어도 하나의 출력 장치로 전송할 수 있다.
이러한 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 응용 프로그램 또는 코드라고도 함)에는 프로그래밍 가능한 프로세서에 대한 기계 명령어가 포함되며, 고급 프로그래밍 및/또는 객체 지향 프로그래밍 언어 및/또는 어셈블리/기계 언어를 사용하여 이러한 컴퓨터 프로그램을 구현할 수 있다. 본 명세서에서 사용되는 "기계 판독 가능 매체" 및 "컴퓨터 판독 가능 매체"라는 용어는 기계 명령어 및/또는 데이터를 프로그램 가능 프로세서에 제공하는 임의의 컴퓨터 프로그램 제품, 장비 및/또는 장치(예를 들어, 자기 디스크, 광 디스크, 메모리, 프로그램 가능 논리 장치 (PLD))를 지칭하며, 기계가 판독할 수 있는 신호인 기계 명령어를 수신할 수 있는 기계 판독 가능 매체를 포함한다. 용어 "기계 판독 가능 신호"는 기계 명령어 및/또는 데이터를 프로그래밍 가능 프로세서에 제공하는 모든 신호를 지칭한다.
사용자와의 상호 작용을 위해, 여기에 설명된 시스템 및 기술을 컴퓨터에서 구현할 수 있으며, 상기 컴퓨터는 사용자에게 정보를 표시하는 디스플레이 장치(예를 들어, CRT모니터 또는 LCD모니터)와, 키보드 및 포인팅 장치(예를 들어, 마우스 또는 트랙볼)를 구비하며, 사용자는 키보드 및 포인팅 장치를 통해 정보를 입력하여 컴퓨터에 제공할 수 있다. 다른 유형의 장치를 사용하여 사용자와의 상호 작용을 제공할 수도 있는데, 예를 들어, 사용자에게 제공되는 피드백은 모든 형태의 감각 피드백(예를 들어, 시각적 피드백, 청각적 피드백 또는 촉각적 피드백) 일 수 있고, 임의의 방식(사운드 입력, 음성 입력 또는 촉각 입력 포함)을 통해 사용자에 의한 입력을 수신할 수 있다.
여기에 설명된 시스템 및 기술은 백엔드 구성 요소를 포함하는 컴퓨팅 시스템(예를 들어, 데이터 서버), 또는 미들웨어 구성 요소를 포함하는 컴퓨팅 시스템(예를 들어, 애플리케이션 서버), 또는 프런트엔드 구성 요소를 포함하는 컴퓨팅 시스템(예를 들어, 그래픽 사용자 인터페이스 또는 웹 브라우저가 있는 사용자 컴퓨터를 포함할 수 있으며, 사용자는 그래픽 사용자 인터페이스 또는 웹 브라우저를 통해 여기에 설명된 시스템 및 기술 구현과 상호 작용할 수 있음), 또는 이러한 백엔드 구성 요소, 미들웨어 구성 요소 또는 프런트엔드 구성 요소의 임의의 조합을 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 모든 형태 또는 매체의 디지털 데이터 통신(예를 들어, 통신 네트워크)을 통해 시스템의 구성 요소를 서로 연결할 수 있다. 통신 네트워크의 예로는 LAN (Local Area Network), WAN (Wide Area Network), 인터넷 및 블록체인 네트워크를 포함할 수 있다.
컴퓨터 시스템에는 클라이언트와 서버가 포함될 수 있다. 클라이언트와 서버는 일반적으로 서로 멀리 떨어져 있으며, 일반적으로 통신 네트워크를 통해 상호 작용한다. 클라이언트와 서버 간의 관계는 해당 컴퓨터에서 컴퓨터 프로그램을 실행하고 서로 클라이언트-서버 관계를 유지함으로써 생성된다.
위에 표시된 다양한 형태의 프로세스를 사용하여 단계를 재정렬, 추가 또는 삭제할 수 있음을 이해해야 한다. 예를 들어, 본 발명에서 설명된 다양한 단계들은 본 발명에 개시된 기술적 해결책의 원하는 결과를 달성할 수 있는 한, 병렬로 수행되거나, 순차적으로 또는 서로 다른 순서로 수행될 수 있으며, 본 명세서에서는 이를 제한하지 않는다.
상기 구체적인 구현 방식은 본 발명의 보호 범위에 대한 제한을 구성하지 않는다. 당업자는 설계 요건 및 기타 요인에 따라 다양한 수정, 조합, 하위 조합 및 대체가 이루어질 수 있음을 이해해야 한다. 본 발명의 정신과 원칙 내에서 이루어진 모든 수정, 동등한 대체 및 개선은 모두 본 발명의 보호 범위에 속한다.

Claims (17)

  1. 엣지 컴퓨팅 테스트 방법에 있어서,
    엣지 모바일 플랫폼에서 테스트 대상 모델을 획득하는 단계;
    상기 테스트 대상 모델에 따라 테스트 작업을 생성하는 단계 - 상기 테스트 작업은 상기 테스트 대상 모델과 상기 테스트 대상 모델을 수행하기 위한 자동화된 테스트 프로그램을 포함함 - ;
    엣지 장치에서 상기 자동화된 테스트 프로그램을 실행하여 상기 테스트 대상 모델을 실행하도록, 상기 테스트 작업을 상기 엣지 장치에 전송하는 단계; 및
    상기 엣지 장치에 의한 상기 테스트 작업의 실행 정보에 따라 테스트 결과를 생성하는 단계; 를 포함하는,
    것을 특징으로 하는 엣지 컴퓨팅 테스트 방법.
  2. 제1항에 있어서,
    상기 테스트 작업을 엣지 장치에 전송하는 단계는,
    동일한 테스트 작업을 서로 다른 엣지 장치에 전송하는 단계;
    상기 테스트 작업을 엣지 장치에 전송하여 클라우드에서 상기 테스트 대상 모델에 대응하는 클라우드 모델을 실행하는 단계;
    서로 다른 테스트 모델이 포함된 서로 다른 테스트 작업을 동일한 엣지 장치에 전송하는 단계; 및
    테스트 작업을 상기 테스트 작업의 테스트 시나리오와 일치한 엣지 장치에 전송하는 단계 - 상기 테스트 시나리오는 모바일 시나리오 및 비 모바일 시나리오를 포함함 - ; 중의 어느 하나를 포함하는,
    것을 특징으로 하는 방법.
  3. 제2항에 있어서,
    상기 테스트 작업을 상기 테스트 작업의 테스트 시나리오와 일치한 엣지 장치에 전송하는 단계 전에,
    상기 테스트 작업의 테스트 시나리오에 대응하는 엣지 장치 클러스터의 인터페이스에 액세스하여 상기 엣지 장치 클러스터에 의해 피드백된 유휴 엣지 장치를 획득하는 단계 - 상기 엣지 장치 클러스터는 모바일 엣지 장치 클러스터 및 비 모바일 엣지 장치 클러스터를 포함함 - ; 및
    상기 유휴 엣지 장치를 연결하는 단계; 를 포함하며,
    상기 테스트 작업을 상기 테스트 작업의 테스트 시나리오와 일치한 엣지 장치에 전송하는 단계는,
    테스트 작업을 상기 유휴 엣지 장치에 전송하는 단계를 포함하는,
    것을 특징으로 하는 방법.
  4. 제3항에 있어서,
    상기 테스트 작업의 테스트 시나리오에 대응하는 엣지 장치 클러스터의 인터페이스에 액세스하는 단계 전에,
    중간 프록시 서버를 통해 상기 비 모바일 엣지 장치 클러스터 중의 각 비 모바일 장치에 네트워크 주소를 제공하는 단계를 더 포함하며,
    상기 유휴 엣지 장치를 연결하는 단계는,
    상기 비 모바일 엣지 장치 클러스터 중의 상기 유휴 엣지 장치의 네트워크 주소에 연결하는 단계를 포함하는,
    것을 특징으로 하는 방법.
  5. 제1항에 있어서,
    상기 테스트 작업을 엣지 장치에 전송하는 단계 이후에,
    테스트 작업 이력에 대해 릴리스 및 백업 중의 적어도 한가지 조작을 수행하는 단계; 및
    상기 테스트 작업의 실행 상태와 로그의 일관성 확인을 수행하는 단계; 중의 적어도 하나를 더 포함하는,
    것을 특징으로 하는 방법.
  6. 제1항에 있어서,
    상기 테스트 작업을 엣지 장치에 전송하는 단계 전에,
    전자 장치의 좀비 장치를 삭제하는 단계;
    상기 전자 장치의 유휴 포트를 동적으로 모니터링하고, 상기 공간 포트와 상기 엣지 장치를 바인딩하는 단계; 및
    상기 엣지 장치에 자동화된 테스트 프레임 워크를 재설치하는 단계; 중의 적어도 하나를 더 포함하는,
    것을 특징으로 하는 방법.
  7. 제1항에 있어서,
    상기 테스트 작업을 엣지 장치에 전송하는 단계 이후에,
    상기 테스트 대상 모델의 설치 작업과 상기 테스트 대상 모델에 대응하는 인증서의 신뢰 작업을 비동기적으로 실행하는 단계;
    상기 엣지 장치에 의해 상기 테스트 작업을 실행하는 과정에 딥러닝 기반 대상 감지 모델을 통해 상기 테스트 대상 모델의 팝업창을 감지하고 상기 팝업창을 자동으로 트리거하는 단계; 및
    기본 제공 종속성 라이브러리에서 상기 엣지 장치와 일치한 종속성을 선택하고, 상기 엣지 장치와 일치한 종속성을 상기 엣지 장치에 전송하는 단계; 중의 적어도 하나를 더 포함하는,
    것을 특징으로 하는 방법.
  8. 제1항에 있어서,
    상기 테스트 작업을 엣지 장치에 전송하는 단계 이후에,
    상기 테스트 대상 모델에 대응되는 테스트 데이터 집합 및 통합 테스트 지표를 상기 엣지 장치에 전송하는 단계를 더 포함하고,
    상기 테스트 데이터 집합은 상기 테스트 대상 모델의 카테고리와 일치한 공개 테스트 데이터 집합과, 상기 테스트 대상 모델이 속하는 테스트 프로젝트에 대응하는 비공개 테스트 데이터 집합과, 상기 테스트 프로젝트의 온라인 사용자 테스트 데이터 집합을 포함하는,
    것을 특징으로 하는 방법.
  9. 제1항에 있어서,
    상기 엣지 장치에 의한 상기 테스트 작업의 실행 정보에 따라 테스트 결과를 생성하는 단계는,
    상기 엣지 장치에 의한 상기 테스트 작업의 실행 상태, 테스트 데이터 및 실패 원인, 상기 테스트 대상 모델의 실행 결과, 사이트 정보, 상기 엣지 장치의 정보 및 상기 테스트 대상 모델의 설치 입구 중의 적어도 하나에 따라 테스트 결과를 생성하는 단계를 포함하는,
    것을 특징으로 하는 방법.
  10. 제9항에 있어서,
    상기 엣지 장치에 의한 상기 테스트 작업의 실행 정보에 따라 테스트 결과를 생성하는 단계 전에,
    상기 테스트 대상 모델의 복수의 실행 결과를 획득하는 단계;
    상기 복수의 실행 결과에서 지정된 횟수의 실행 결과를 삭제하여 남은 횟수의 실행 결과를 획득하는 단계; 및
    상기 남은 횟수의 실행 결과에 따라 상기 테스트 대상 모델의 실행 결과를 생성하는 단계; 를 포함하는,
    것을 특징으로 하는 방법.
  11. 제1항에 있어서,
    상기 엣지 모바일 플랫폼에서 테스트 대상 모델을 획득하는 단계 전에,
    클라우드 모델이 상기 테스트 대상 모델로 변환되는 각 단계의 작업 흐름에 대해 모니터링, 시각적 표시 및 중단점 시작/중지 중의 적어도 하나를 수행하는,
    것을 특징으로 하는 방법.
  12. 제11항에 있어서,
    상기 클라우드 모델이 상기 테스트 대상 모델로 변환되는 각 단계의 작업 흐름에 대해 모니터링, 시각적 표시 및 중단점 시작/중지 중의 적어도 하나를 수행하는 단계는,
    분산 작업 스케줄링 프레임 워크를 사용하여 클라우드 모델이 상기 테스트 대상 모델로 변환되는 압축, 호환성, 가속 및 패키징 단계의 작업 흐름에 대해 모니터링, 시각적 표시 및 중단점 시작/중지를 수행하는 단계; 및
    모델 변환 미러 라이브러리에서 생성된 로그를 캡처하고, 캡처된 로그를 시각적으로 표시하는 단계 - 상기 모델 변환 미러 라이브러리는 상기 클라우드 모델의 프레임 워크를 상기 테스트 대상 모델의 프레임 워크로 변환하기 위해 사용됨 - ;를 포함하는,
    것을 특징으로 하는 방법.
  13. 엣지 컴퓨팅 테스트 장치에 있어서,
    엣지 모바일 플랫폼에서 테스트 대상 모델을 획득하는 획득 모듈;
    상기 테스트 대상 모델에 따라 테스트 작업을 생성하는 작업 생성 모듈 - 상기 테스트 작업은 상기 테스트 대상 모델과 상기 테스트 대상 모델을 수행하기 위한 자동화된 테스트 프로그램을 포함함 - ;
    엣지 장치에서 상기 자동화된 테스트 프로그램을 실행하여 상기 테스트 대상 모델을 실행하도록, 상기 테스트 작업을 상기 엣지 장치에 전송하는 전송 모듈; 및
    상기 엣지 장치에 의한 상기 테스트 작업의 실행 정보에 따라 테스트 결과를 생성하는 결과 생성 모듈; 을 포함하는,
    것을 특징으로 하는 엣지 컴퓨팅 테스트 장치.
  14. 제13항에 있어서,
    클라우드 모델이 상기 테스트 대상 모델로 변환되는 각 단계의 작업 흐름에 대해 모니터링, 시각적 표시 및 중단점 시작/중지 중의 적어도 하나를 수행하기 위한 조작 모듈을 더 포함하는,
    것을 특징으로 하는 장치.
  15. 전자 장치에 있어서,
    하나 이상의 프로세서; 및
    상기 하나 이상의 프로세서와 통신 연결되는 메모리; 를 포함하고,
    상기 메모리에는 상기 하나 이상의 프로세서에 의해 실행 가능한 명령어가 저장되며, 상기 명령어가 상기 하나 이상의 프로세서에 의해 실행될 경우, 상기 하나 이상의 프로세서가 제1항 내지 제12항 중 어느 한 항의 엣지 컴퓨팅 테스트 방법을 수행하는,
    것을 특징으로 하는 전자 장치.
  16. 컴퓨터 프로그램이 저장되어 있는 비 일시적 컴퓨터 판독 가능 저장 매체에 있어서,
    상기 컴퓨터 프로그램의 명령어가 실행될 경우, 제1항 내지 제12항 중 어느 한 항의 엣지 컴퓨팅 테스트 방법이 수행되는,
    것을 특징으로 하는 컴퓨터 프로그램이 저장되어 있는 비 일시적 컴퓨터 판독 가능 저장 매체.
  17. 컴퓨터 판독 가능 매체에 저장되어 있는 컴퓨터 프로그램에 있어서,
    상기 컴퓨터 프로그램의 명령어가 실행될 경우, 제1항 내지 제12항 중 어느 한 항의 엣지 컴퓨팅 테스트 방법이 수행되는,
    것을 특징으로 하는 컴퓨터 판독 가능 매체에 저장되어 있는 컴퓨터 프로그램.

KR1020210038844A 2020-04-17 2021-03-25 엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체 KR102493449B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010306686.2A CN111506508A (zh) 2020-04-17 2020-04-17 边缘计算测试方法、装置、设备和可读存储介质
CN202010306686.2 2020-04-17

Publications (2)

Publication Number Publication Date
KR20210040884A true KR20210040884A (ko) 2021-04-14
KR102493449B1 KR102493449B1 (ko) 2023-01-31

Family

ID=71872827

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210038844A KR102493449B1 (ko) 2020-04-17 2021-03-25 엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체

Country Status (5)

Country Link
US (1) US20210232498A1 (ko)
EP (1) EP3842948B1 (ko)
JP (1) JP7209034B2 (ko)
KR (1) KR102493449B1 (ko)
CN (1) CN111506508A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113805546A (zh) * 2021-09-15 2021-12-17 广州文远知行科技有限公司 一种模型的部署方法、装置、计算机设备和存储介质
CN113961174A (zh) * 2021-10-25 2022-01-21 上海电器科学研究所(集团)有限公司 一种基于云原生微服务的模型开发与部署方法
KR102500433B1 (ko) * 2022-11-01 2023-02-16 주식회사 큐로드 소프트웨어의 품질보증을 위한 테스트 케이스 자동생성 방법, 장치 및 컴퓨터프로그램

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11556730B2 (en) * 2018-03-30 2023-01-17 Intel Corporation Methods and apparatus for distributed use of a machine learning model
CN111930633A (zh) * 2020-08-19 2020-11-13 北京海益同展信息科技有限公司 数据测试方法、平台、电子设备及存储介质
CN112398707B (zh) * 2020-11-03 2022-08-30 平安普惠企业管理有限公司 分布式自动化测试管理方法、装置、设备及存储介质
CN112910723B (zh) * 2021-01-15 2023-01-31 南方电网大数据服务有限公司 边缘终端管理方法、装置、设备及存储介质
EP4285231A1 (en) * 2021-01-29 2023-12-06 Assia Spe, Llc System and method for network and computation performance probing for edge computing
CN112835759A (zh) * 2021-02-01 2021-05-25 百度在线网络技术(北京)有限公司 测试数据处理方法、装置、电子设备以及存储介质
US11520685B2 (en) * 2021-03-01 2022-12-06 Fmr Llc Systems and methods for an end-to-end automation framework
CN115391166A (zh) * 2021-05-25 2022-11-25 爱德万测试股份有限公司 自动化测试系统及方法
CN113377664A (zh) * 2021-06-25 2021-09-10 上海商汤科技开发有限公司 模型测试方法及装置、电子设备和存储介质
CN113377673B (zh) * 2021-06-30 2023-11-21 中国农业银行股份有限公司 软件测试的测试前移工作量占比的预测方法、装置和设备
US20230043505A1 (en) * 2021-08-09 2023-02-09 International Business Machines Corporation Deep learning software model modification
KR102582777B1 (ko) 2021-10-27 2023-09-25 숭실대학교산학협력단 에지 컴퓨팅 환경을 위한 경량 큐브에지 구성 방법 및 장치
CN114510405A (zh) * 2022-01-28 2022-05-17 腾讯科技(深圳)有限公司 指标数据评估方法、装置、设备、存储介质及程序产品
CN114661571A (zh) * 2022-03-30 2022-06-24 北京百度网讯科技有限公司 模型评测方法、装置、电子设备和存储介质
CN115145813A (zh) * 2022-06-30 2022-10-04 北京达佳互联信息技术有限公司 模型评测方法及设备
CN116501652B (zh) * 2023-06-29 2023-09-12 绿城科技产业服务集团有限公司 基于saas系统的可持续集成的自动化测试方法及系统
CN116662211B (zh) * 2023-07-31 2023-11-03 四川弘和数智集团有限公司 显示界面测试方法、装置及设备和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014191830A (ja) * 2013-03-27 2014-10-06 Fujitsu Ltd アプリケーションの自動的な特徴駆動型のテスト及び品質チェックの方法、システム及び製品
US20150081598A1 (en) * 2013-09-17 2015-03-19 Xamarin Inc. Generating application models based on discovery based machine learning
JP2016525731A (ja) * 2013-05-02 2016-08-25 アマゾン テクノロジーズ インコーポレイテッド プログラム試験サービス
US20170017566A1 (en) * 2015-07-17 2017-01-19 Magine Holding AB Modular plug-and-play system for continuous model driven testing
JP2019074954A (ja) * 2017-10-17 2019-05-16 キヤノン株式会社 情報処理装置、管理サーバー、情報処理方法及びプログラム
CN110135167A (zh) * 2019-05-14 2019-08-16 电子科技大学 一种随机森林的边缘计算终端安全等级评估方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8826084B1 (en) * 2011-09-07 2014-09-02 Innovative Defense Technologies, LLC Method and system for implementing automated test and retest procedures
WO2015073046A1 (en) * 2013-11-18 2015-05-21 Hewlett-Packard Development Company, L.P. Event-driven automation testing for mobile devices
US10122747B2 (en) * 2013-12-06 2018-11-06 Lookout, Inc. Response generation after distributed monitoring and evaluation of multiple devices
US20150254163A1 (en) * 2014-03-05 2015-09-10 Concurix Corporation Origin Trace Behavior Model for Application Behavior
US9606903B2 (en) * 2014-06-06 2017-03-28 Paypal, Inc. Unit test automation for business rules and applications
CN106708715A (zh) * 2015-07-13 2017-05-24 阿里巴巴集团控股有限公司 自动化测试方法及装置
CN106844213A (zh) * 2017-01-21 2017-06-13 江苏千米网络科技股份有限公司 一种前端自动化测试方法及装置
US10754765B2 (en) 2017-05-17 2020-08-25 Google Llc Operating system validation
US10817406B2 (en) * 2018-03-30 2020-10-27 Ab Initio Technology Llc Debugging an executable control flow graph that specifies control flow
CN108628747A (zh) * 2018-05-09 2018-10-09 深圳壹账通智能科技有限公司 H5应用测试方法、装置、计算机设备及存储介质
CN108572919A (zh) * 2018-05-30 2018-09-25 平安普惠企业管理有限公司 自动化测试方法、装置、计算机设备及存储介质
CN108932535B (zh) * 2018-07-13 2019-07-02 南方电网科学研究院有限责任公司 一种基于机器学习的边缘计算克隆节点识别方法
CN109634843B (zh) * 2018-10-31 2021-09-21 中国科学院软件研究所 一种面向ai芯片平台的分布式自动化软件测试方法及平台
CN109597677B (zh) * 2018-12-07 2020-05-22 北京百度网讯科技有限公司 用于处理信息的方法和装置
CN109597764A (zh) * 2018-12-10 2019-04-09 浪潮(北京)电子信息产业有限公司 一种目录配额的测试方法及相关装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014191830A (ja) * 2013-03-27 2014-10-06 Fujitsu Ltd アプリケーションの自動的な特徴駆動型のテスト及び品質チェックの方法、システム及び製品
JP2016525731A (ja) * 2013-05-02 2016-08-25 アマゾン テクノロジーズ インコーポレイテッド プログラム試験サービス
US20150081598A1 (en) * 2013-09-17 2015-03-19 Xamarin Inc. Generating application models based on discovery based machine learning
US20170017566A1 (en) * 2015-07-17 2017-01-19 Magine Holding AB Modular plug-and-play system for continuous model driven testing
JP2019074954A (ja) * 2017-10-17 2019-05-16 キヤノン株式会社 情報処理装置、管理サーバー、情報処理方法及びプログラム
CN110135167A (zh) * 2019-05-14 2019-08-16 电子科技大学 一种随机森林的边缘计算终端安全等级评估方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113805546A (zh) * 2021-09-15 2021-12-17 广州文远知行科技有限公司 一种模型的部署方法、装置、计算机设备和存储介质
CN113961174A (zh) * 2021-10-25 2022-01-21 上海电器科学研究所(集团)有限公司 一种基于云原生微服务的模型开发与部署方法
CN113961174B (zh) * 2021-10-25 2024-04-30 上海电器科学研究所(集团)有限公司 一种基于云原生微服务的模型开发与部署方法
KR102500433B1 (ko) * 2022-11-01 2023-02-16 주식회사 큐로드 소프트웨어의 품질보증을 위한 테스트 케이스 자동생성 방법, 장치 및 컴퓨터프로그램

Also Published As

Publication number Publication date
EP3842948A3 (en) 2021-10-20
JP2021103571A (ja) 2021-07-15
EP3842948A2 (en) 2021-06-30
CN111506508A (zh) 2020-08-07
US20210232498A1 (en) 2021-07-29
JP7209034B2 (ja) 2023-01-19
EP3842948B1 (en) 2023-05-31
KR102493449B1 (ko) 2023-01-31

Similar Documents

Publication Publication Date Title
KR102493449B1 (ko) 엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체
US8910166B2 (en) Automatic transcoding and semantic adaptation between scripting and workflow systems
US8584079B2 (en) Quality on submit process
US11762763B2 (en) Orchestration for automated performance testing
US8769502B2 (en) Template based asynchrony debugging configuration
US20140331209A1 (en) Program Testing Service
US10042744B2 (en) Adopting an existing automation script to a new framework
CN111752843B (zh) 用于确定影响面的方法、装置、电子设备及可读存储介质
CN107608901B (zh) 基于Jmeter的测试方法及装置、存储介质、电子设备
CN110347389B (zh) 算法文件的处理方法、装置和系统
CN111984476A (zh) 测试方法和装置
US20140331205A1 (en) Program Testing Service
US8117255B2 (en) Systems and methods for smart client remote data monitoring
CN113127009A (zh) 大数据管理平台的自动化部署方法和装置
CN111245917B (zh) 一种基于katalon的工单录入装置及其实现方法
US10073689B2 (en) Managing application lifecycles within a federation of distributed software applications
CN116248526A (zh) 部署容器平台的方法、装置及电子设备
CN116244186A (zh) 一种操作系统测试管理方法、装置与计算设备
CN112491940A (zh) 代理服务器的请求转发方法及装置、存储介质及电子设备
CN113641575B (zh) 一种测试方法、装置、设备及存储介质
JP2022008782A (ja) デバイスデバッグ環境の構築方法及び装置
CN111858302A (zh) 小程序的测试方法、装置、电子设备及存储介质
CN113220507B (zh) 双主控系统的版本一致性检验方法及装置
JP7323755B2 (ja) 情報処理システム、その制御方法及びプログラム
US20240192974A1 (en) Simulation of one or more pipeline jobs in a software deployment pipeline

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant