- แหล่งข้อมูล: การดำเนินการ
- MatrixDimensionDefinition
- ข้อกำหนด
- AndroidTest
- ข้อมูลแอป Android
- AndroidInstrumentationTest
- AndroidRoboTest
- AndroidTestLoop
- IosTest
- ข้อมูลแอป iOS
- IosXcTest
- IosTestLoop
- IosRoboTest
- เมธอด
ทรัพยากร: การดำเนินการ
การดำเนินการคือชุดขั้นตอน ตัวอย่างเช่น การทดสอบบนอุปกรณ์เคลื่อนที่จะดำเนินการผ่านการกำหนดค่าอุปกรณ์ต่างๆ โดยงานของ Jenkins ที่มีขั้นตอนบิลด์ตามด้วยขั้นตอนการทดสอบ
ขนาดสูงสุดของข้อความการดำเนินการคือ 1 MiB
คุณสามารถอัปเดตการดำเนินการได้จนกว่าจะตั้งค่าสถานะเป็น COMPLETE ซึ่งจะไม่สามารถเปลี่ยนแปลงได้
การแสดง JSON |
---|
{ "executionId": string, "state": enum ( |
ช่อง | |
---|---|
executionId |
ตัวระบุที่ไม่ซ้ำกันภายในประวัติสำหรับการดำเนินการนี้ แสดงผล INVALID_ARGUMENT หากผู้โทรตั้งค่าหรือเขียนทับฟิลด์นี้
|
state |
สถานะเริ่มต้นคือ IN_PROGRESS การเปลี่ยนแปลงสถานะทางกฎหมายเพียงอย่างเดียวคือจาก IN_PROGRESS เป็น COMPLETE ระบบจะส่งคืน PRECONDITION_FAILED หากมีการขอการเปลี่ยนที่ไม่ถูกต้อง สถานะนี้จะตั้งค่าเป็น COMPLETE ได้เพียงครั้งเดียว ระบบจะส่งคืน FAILED_PRECONDITION หากกำหนดสถานะเป็น COMPLETE หลายครั้ง หากตั้งค่าสถานะเป็น "เสร็จสมบูรณ์" ขั้นตอนที่อยู่ระหว่างดำเนินการทั้งหมดจะตั้งค่าเป็น "เสร็จสมบูรณ์" หากไม่ได้ตั้งค่าผลลัพธ์ของขั้นตอน ผลลัพธ์จะถูกตั้งค่าเป็น INCONCLUSIVE
|
creationTime |
เวลาที่สร้างการดำเนินการ ระบบจะตั้งค่านี้โดยอัตโนมัติเมื่อมีการเรียกใช้ actions.create
|
completionTime |
เวลาที่สถานะการดำเนินการเปลี่ยนเป็น COMPLETE ค่านี้จะได้รับการกำหนดโดยอัตโนมัติเมื่อสถานะเปลี่ยนเป็น COMPLETE
|
outcome |
จัดประเภทผลลัพธ์ เช่น สำเร็จ หรือ ไม่ผ่าน
|
dimensionDefinitions[] |
มิติข้อมูลที่มีขั้นตอนต่างๆ ในการดำเนินการนี้อาจแตกต่างกันไป ซึ่งจะต้องได้รับการแก้ไขตลอดระยะเวลาของการดำเนินการ แสดงผล INVALID_ARGUMENT หากตั้งค่าช่องนี้ในคำขออัปเดต แสดงค่า INVALID_ARGUMENT ในกรณีที่มีชื่อเหมือนกัน ต้องมีการระบุค่ามิติข้อมูล 1 อย่างมากกว่า 1 รายการ แสดงผล INVALID_ARGUMENT หากขนาดของรายการเกิน 100
|
specification |
ข้อมูลขนาดเล็กเกี่ยวกับคำขอดำเนินการ
|
testExecutionMatrixId |
รหัส Matrix TestExecution ที่ TestExecutionService ใช้
|
MatrixDimensionDefinition
ประเภทนี้ไม่มีช่อง
มิติหนึ่งของเมทริกซ์ของการวิ่งแต่ละก้าวที่แตกต่างกัน
ข้อกำหนดเฉพาะ
รายละเอียดเกี่ยวกับวิธีเรียกใช้การดำเนินการ
การแสดง JSON |
---|
{ // Union field |
ช่อง | |
---|---|
ช่องการรวม
|
|
androidTest |
ข้อมูลจำเพาะของการดำเนินการทดสอบกับอุปกรณ์เคลื่อนที่ Android |
iosTest |
ข้อมูลจำเพาะของการดำเนินการทดสอบกับอุปกรณ์เคลื่อนที่ iOS |
ทดสอบ Android
ข้อกำหนดการทดสอบสำหรับอุปกรณ์เคลื่อนที่ Android
การแสดง JSON |
---|
{ "androidAppInfo": { object ( |
ช่อง | |
---|---|
androidAppInfo |
ข้อมูลเกี่ยวกับแอปพลิเคชันที่อยู่ระหว่างการทดสอบ |
testTimeout |
จำนวนครั้งสูงสุดที่การทดสอบได้รับอนุญาตให้ทำงานก่อนที่การทดสอบจะถูกยกเลิกโดยอัตโนมัติ |
ช่องการรวม
|
|
androidInstrumentationTest |
การทดสอบการใช้เครื่องมือ Android |
androidRoboTest |
การทดสอบ Android Robo |
androidTestLoop |
Test Loop ของ Android |
ข้อมูลแอปของ Android
ข้อมูลแอป Android
การแสดง JSON |
---|
{ "name": string, "packageName": string, "versionName": string, "versionCode": string } |
ช่อง | |
---|---|
name |
ชื่อของแอป ไม่บังคับ |
packageName |
ชื่อแพ็กเกจของแอป ต้องระบุ |
versionName |
ชื่อเวอร์ชันของแอป (ไม่บังคับ) |
versionCode |
รหัสเวอร์ชันภายในของแอป (ไม่บังคับ) |
AndroidInstrumentationTest
การทดสอบแอปพลิเคชัน Android ที่ควบคุมคอมโพเนนต์ Android ได้อย่างอิสระจากวงจรชีวิตปกติ
ดูข้อมูลเพิ่มเติมเกี่ยวกับประเภทการทดสอบ Android ได้ที่ https://developer.android.com/training/testing/fundamentals
การแสดง JSON |
---|
{ "testPackageId": string, "testRunnerClass": string, "testTargets": [ string ], "useOrchestrator": boolean } |
ช่อง | |
---|---|
testPackageId |
แพ็กเกจ Java สำหรับทดสอบที่จะดำเนินการ ต้องระบุ |
testRunnerClass |
คลาส InstrumentationTestRunner ต้องระบุ |
testTargets[] |
เป้าหมายแต่ละรายการต้องเป็นแบบเต็มด้วยชื่อแพ็กเกจหรือชื่อคลาสซึ่งอยู่ในรูปแบบใดรูปแบบหนึ่งต่อไปนี้ - "packagepackageName" - "classpackageName.class_name" - "classpackageName.class_name#methodName" หากเว้นว่างไว้ เป้าหมายทั้งหมดในโมดูลจะทำงาน |
useOrchestrator |
ธงระบุว่าจะมีการใช้ Android Test Orchestrator เพื่อทำการทดสอบหรือไม่ |
AndroidRoboTest
การทดสอบแอปพลิเคชัน Android ที่สำรวจแอปพลิเคชันนั้นบนอุปกรณ์ Android เสมือนหรืออุปกรณ์จริง เพื่อหาสาเหตุและข้อขัดข้องที่เกิดขึ้น
การแสดง JSON |
---|
{ "appInitialActivity": string, "bootstrapPackageId": string, "bootstrapRunnerClass": string, "maxDepth": integer, "maxSteps": integer } |
ช่อง | |
---|---|
appInitialActivity |
กิจกรรมเริ่มต้นที่ควรใช้ในการเริ่มต้นแอป ไม่บังคับ |
bootstrapPackageId |
แพ็กเกจ Java สำหรับ Bootstrap ไม่บังคับ |
bootstrapRunnerClass |
คลาสวิ่งสำหรับรองเท้าบู๊ต ไม่บังคับ |
maxDepth |
ความลึกสูงสุดของสแต็ก Traversal ที่ Robo สำรวจได้ ไม่บังคับ |
maxSteps |
จำนวนขั้นตอน/การดำเนินการสูงสุดที่ Robo ทำได้ ไม่มีขีดจำกัดเริ่มต้น (0) ไม่บังคับ |
AndroidTestLoop
ประเภทนี้ไม่มีช่อง
Test Loop คือการทดสอบที่แอปสามารถเปิดได้เอง เพื่อระบุว่าเมื่อใดควรเรียกใช้โดยการฟังจุดประสงค์
การทดสอบ Ios
ข้อกำหนดการทดสอบสำหรับอุปกรณ์เคลื่อนที่ iOS
การแสดง JSON |
---|
{ "iosAppInfo": { object ( |
ช่อง | |
---|---|
iosAppInfo |
ข้อมูลเกี่ยวกับแอปพลิเคชันที่อยู่ระหว่างการทดสอบ |
testTimeout |
จำนวนครั้งสูงสุดที่การทดสอบได้รับอนุญาตให้ทำงานก่อนที่การทดสอบจะถูกยกเลิกโดยอัตโนมัติ |
ช่องการรวม
|
|
iosXcTest |
iOS XCTest |
iosTestLoop |
Test Loop ของ iOS |
iosRoboTest |
การทดสอบ Robo ของ iOS |
ข้อมูลแอป iOS
ข้อมูลแอป iOS
การแสดง JSON |
---|
{ "name": string } |
ช่อง | |
---|---|
name |
ชื่อของแอป จำเป็น |
การทดสอบ IosXc
การทดสอบแอปพลิเคชัน iOS ที่ใช้เฟรมเวิร์ก XCTest
การแสดง JSON |
---|
{ "bundleId": string, "xcodeVersion": string } |
ช่อง | |
---|---|
bundleId |
รหัสชุดของแอป |
xcodeVersion |
Xcode เวอร์ชันที่ใช้ทดสอบ |
การทดสอบลูป Ios
การทดสอบ Game Loop ของแอปพลิเคชัน iOS
การแสดง JSON |
---|
{ "bundleId": string } |
ช่อง | |
---|---|
bundleId |
รหัสชุดของแอป |
ไอออสโรโบทดสอบ
ประเภทนี้ไม่มีช่อง
การทดสอบ Robo สำหรับแอปพลิเคชัน iOS
เมธอด |
|
---|---|
|
สร้างการดำเนินการ |
|
รับการดำเนินการ |
|
แสดงรายการการดำเนินการสำหรับประวัติที่ระบุ |
|
อัปเดตการดำเนินการที่มีอยู่ด้วยเอนทิตีบางส่วนที่ระบุ |