TestService
*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่
บริการทดสอบเป็นบริการที่ใช้โดย Roblox ภายในเพื่อทำการทดสอบวิเคราะห์บนเครื่องยนต์ของพวกเขาทำให้เป็นไปได้ที่จะเขียนการทดสอบที่ซับซ้อนภายในเกมโดยตรง
แมโคร
สคริปต์ที่ถูกดําเนินการภายใน TestService (ผ่าน TestService:Run() ) มีการเข้าถึงแมโครพิเศษที่เรียกฟังก์ชันโดยตรงภายใต้ TestServiceแมโครเป็นการเปลี่ยนแปลงทดแทนสําหรับบล็อกโค้ดขนาดใหญ่ที่ไม่ควรต้องเขียนใหม่ทุกครั้งที่ต้องการเรียกใช้
RBX_CHECK
แมโครนี้ทำการทดสอบด้วยการโทรไปที่ฟังก์ชัน TestService:Check()
<th>สภาวะการทดสอบ</th></tr><tr><td>RBX_CHECK(cond)</td><td>cond == จริง</td></tr><tr><td>RBX_CHECK_MESSAGE(cond, ข้อความล้มเหลว)</td><td>cond == จริง</td></tr><tr><td>RBX_CHECK_THROW(รหัส)</td><td>pcall(ฟังก์ชัน() ปิด) == ไม่ถูกต้อง</td></tr><tr><td>RBX_CHECK_NO_THROW(รหัส)</td><td>pcall(ฟังก์ชัน() ปิด) == จริง</td></tr><tr><td>RBX_CHECK_EQUAL(a, b)</td><td>a == b</td></tr><tr><td>RBX_CHECK_NE(a,b)</td><td>a ~= b</td></tr><tr><td>RBX_CHECK_GE(a,b)</td><td>a >= b</td></tr><tr><td>RBX_CHECK_LE(a,b)</td><td>a <= b</td></tr><tr><td>RBX_CHECK_GT(a,b)</td><td>a > b</td></tr><tr><td>RBX_CHECK_LT(a, b)</td><td>a < b</td></tr>
แมโคร |
RBX_REQUIRE
แมโครนี้ทำการทดสอบด้วยการโทรไปที่ฟังก์ชัน TestService:Require()
<th>สภาวะการทดสอบ</th></tr><tr><td>RBX_REQUIRE(cond)</td><td>cond == จริง</td></tr><tr><td>RBX_REQUIRE_MESSAGE(cond, ผลลัพธ์ล้มเหลว)</td><td>cond == จริง</td></tr><tr><td>RBX_REQUIRE_THROW(รหัส)</td><td>pcall(ฟังก์ชัน() ปิด) == ไม่ถูกต้อง</td></tr><tr><td>RBX_REQUIRE_NO_THROW(รหัส)</td><td>pcall(ฟังก์ชัน() ปิด) == จริง</td></tr><tr><td>RBX_REQUIRE_EQUAL(a,b)</td><td>a == b</td></tr><tr><td>RBX_REQUIRE_NE(a,b)</td><td>a ~= b</td></tr><tr><td>RBX_REQUIRE_GE(a,b)</td><td>a >= b</td></tr><tr><td>RBX_REQUIRE_LE(a,b)</td><td>a <= b</td></tr><tr><td>RBX_REQUIRE_GT(a,b)</td><td>a > b</td></tr><tr><td>RBX_REQUIRE_LT(a,b)</td><td>a < b</td></tr>
แมโคร |
RBX_WARN
แมโครนี้ทำการทดสอบด้วยการโทรไปที่ฟังก์ชัน TestService:Warn()
<th>สภาวะการทดสอบ</th></tr><tr><td>RBX_WARN(cond)</td><td>cond == จริง</td></tr><tr><td>RBX_WARN_MESSAGE(cond, ข้อความล้มเหลว)</td><td>cond == จริง</td></tr><tr><td>RBX_WARN_THROW(รหัส)</td><td>pcall(ฟังก์ชัน() ปิด) == ไม่ถูกต้อง</td></tr><tr><td>RBX_WARN_NO_THROW(รหัส)</td><td>pcall(ฟังก์ชัน() ปิด) == จริง</td></tr><tr><td>RBX_WARN_EQUAL(a, b)</td><td>a == b</td></tr><tr><td>RBX_WARN_NE(a,b)</td><td>a ~= b</td></tr><tr><td>RBX_WARN_GE(a,b)</td><td>a >= b</td></tr><tr><td>RBX_WARN_LE(a,b)</td><td>a <= b</td></tr><tr><td>RBX_WARN_GT(a,b)</td><td>a > b</td></tr><tr><td>RBX_WARN_LT(a, b)</td><td>a < b</td></tr>
แมโคร |
แมโครเพิ่มเติม
<th>คําอธิบาย</th></tr><tr><td>RBX_ERROR(msg)</td><td>เรียกฟังก์ชัน <code>Class.TestService:Error()</code> โดยตรง</td></tr><tr><td>RBX_FAIL(msg)</td><td>เรียกฟังก์ชัน <code>Class.TestService:Fail()</code> โดยตรง</td></tr><tr><td>RBX_MESSAGE(msg)</td><td>เรียกฟังก์ชัน <code>Class.TestService:Message()</code> โดยตรง</td></tr>
แมโคร |
สรุป
คุณสมบัติ
หากตั้งค่าเป็นจริงเกมจะเริ่มทำงานเมื่อเมธอด TestService:Run() ของ TestService ถูกเรียก
คำอธิบายของการทดสอบที่ถูกดำเนินการ
วัดจำนวนข้อผิดพลาดที่บันทึกไว้ในเซสชันการทดสอบ
เมื่อตั้งค่าเป็นจริง บริการทดสอบจะถูกดำเนินการเมื่อใช้การดำเนินการ ดําเนินการ ใน Roblox Studio
ตั้งค่าว่าจะมีการจำกัดการใช้พลังงานของสภาพแวดล้อมทางกายภาพหรือไม่เมื่อทำการทดสอบนี้
ตั้งค่าว่าจะอนุญาตให้วัตถุทางกายภาพหลับหรือไม่ในขณะที่การทดสอบจำลองกำลังดำเนินการ
จํานวนผู้เล่นที่คาดว่าจะมีในการทดสอบนี้ ถ้ามี
ตั้งจํานวนความล่าช้าเพิ่มเติมที่เฉพาะเจาะจงที่ผู้เล่นประสบในระหว่างเซสชันการทดสอบ
วัดจำนวนการโทรทดสอบที่บันทึกไว้ในเซสชันการทดสอบ
ตั้งค่าว่าการทดสอบควรถูกจำกัดเพื่อจำลองเวลาตามเวลาในโลกแท้หรือเร็วที่สุดเท่าที่เป็นไปได้
จํานวนเวลาสูงสุดที่ทดสอบสามารถทํางานได้
วัดจำนวนการโทรเตือนที่บันทึกไว้ในเซสชันการทดสอบ
วิธีการ
พิมพ์ผลลัพธ์ของเงื่อนไขเพื่อออก
พิมพ์ "จุดตรวจทดสอบ: " ตามด้วยข้อความ ไปยังออก ในข้อความสีฟ้า
พิมพ์การทดสอบเสร็จสมบูรณ์ไปยังออกในข้อความสีฟ้า
พิมพ์ข้อความสีแดงไปยังออกโดยมีคํานําหน้าด้วย TestService:
บ่งบอกถึงข้อผิดพลาดร้ายแรงในการดำเนินการของ TestServiceหากเรียกภายในสคริปต์ที่ทำงานอยู่ภายใน TestService จะเริ่มจุดหยุดในบรรทัดที่เรียกความผิดพลาด
พิมพ์ข้อความทดสอบตามด้วยข้อความไปยังออกในข้อความสีฟ้า
พิมพ์ว่าเงื่อนไขเป็นจริงพร้อมกับข้อความคำอธิบาย
พิมพ์หากเงื่อนไขเป็นจริง มิฉะนั้นจะพิมพ์คําเตือน
รันสคริปต์ที่เป็นพ่อของ TestService
อีเวนต์
- ServerCollectConditionalResult(condition : boolean,text : string,script : Instance,line : number):RBXScriptSignal
ยิงเมื่อเซิร์ฟเวอร์ควรรวบรวมผลการทดสอบแบบมีเงื่อนไข
ผลการค้นหา
คุณสมบัติ
ExecuteWithStudioRun
เมื่อตั้งค่าเป็นจริง บริการทดสอบจะถูกดำเนินการเมื่อใช้การดำเนินการ ดําเนินการ ใน Roblox Studio
หมายเหตุ:
- หากค่า TestService.NumberOfPlayers คุณสมบัติถูกตั้งค่าเป็นค่าสูงกว่า 0 การเรียกใช้เกมจะเปิดหน้าต่างสตูดิโอ NumberOfPlayers + 1 ซึ่งหน้าต่างหนึ่งเป็นเซิร์ฟเวอร์ และส่วนที่เหลือเป็นผู้เล่นที่เชื่อมต่อกับเซิร์ฟเวอร์นั้น
- พยายามที่จะรักษามูลค่านี้ภายในช่วงเหตุผล (ผู้เล่นสูงสุด 1 ถึง 8 คน) หรืออย่างนั้นคอมพิวเตอร์ของคุณจะถูกโหลดเกิน
IsPhysicsEnvironmentalThrottled
ตั้งค่าว่าจะมีการจำกัดการใช้พลังงานของสภาพแวดล้อมทางกายภาพหรือไม่เมื่อทำการทดสอบนี้
IsSleepAllowed
ตั้งค่าว่าจะอนุญาตให้วัตถุทางกายภาพหลับหรือไม่ในขณะที่การทดสอบจำลองกำลังดำเนินการ
SimulateSecondsLag
ตั้งจํานวนความล่าช้าเพิ่มเติมที่เฉพาะเจาะจงที่ผู้เล่นประสบในระหว่างเซสชันการทดสอบ
ThrottlePhysicsToRealtime
ตั้งค่าว่าการทดสอบควรถูกจำกัดเพื่อจำลองเวลาตามเวลาในโลกแท้หรือเร็วที่สุดเท่าที่เป็นไปได้
วิธีการ
Check
หากเงื่อนไขเป็นจริงจะพิมพ์ "ตรวจสอบผ่าน: " ตามด้วยคำอธิบายสำหรับออกในข้อความสีฟ้ามิฉะนั้นจะพิมพ์ "ตรวจสอบล้มเหลว: " อีกครั้งตามด้วยคำอธิบาย แต่ในข้อความสีแดง
พารามิเตอร์
ส่งค่ากลับ
ตัวอย่างโค้ด
This code would print Check failed: example to the output, in red text.
local TestService = game:GetService("TestService")
TestService:Check(false, "example")
Checkpoint
พิมพ์ " จุดตรวจทดสอบ: ", ตามด้วย ข้อความ , ไปยังผลลัพธ์ในข้อความสีฟ้า
พารามิเตอร์
ส่งค่ากลับ
ตัวอย่างโค้ด
This code would print Test checkpoint: example to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Checkpoint("example")
Done
พิมพ์ การทดสอบเสร็จสมบูรณ์ ไปยังออกในข้อความสีฟ้า
ส่งค่ากลับ
ตัวอย่างโค้ด
This code would print Testing Done to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Done()
Error
พิมพ์ข้อความสีแดงไปยังออกโดยมีคํานําหน้าด้วย TestService:
พารามิเตอร์
ส่งค่ากลับ
ตัวอย่างโค้ด
This will print TestService: "This is an error" to the output.
local TestService = game:GetService("TestService")
TestService:Error("this is an error")
Fail
บ่งบอกถึงข้อผิดพลาดร้ายแรงในการดำเนินการของ TestServiceหากเรียกภายในสคริปต์ที่ทำงานอยู่ภายใน TestService จะเริ่มจุดหยุดในบรรทัดที่เรียกความผิดพลาด
พารามิเตอร์
ส่งค่ากลับ
Message
พิมพ์ ข้อความทดสอบ ตามด้วย ข้อความ ไปยังผลลัพธ์ในข้อความสีฟ้า
พารามิเตอร์
ส่งค่ากลับ
ตัวอย่างโค้ด
This code would print Test message: example to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Message("example")
Require
หาก condition เป็นจริง จะพิมพ์ Require passed: ตามด้วย description ไปยังออกในข้อความสีฟ้ามิฉะนั้นจะพิมพ์ Require failed. Test ended: ตามด้วย description ลงในออกในข้อความสีแดง
พารามิเตอร์
ส่งค่ากลับ
ตัวอย่างโค้ด
This code would print Require passed: example to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Require(false, "example")
Warn
หากเงื่อนไข เป็นจริง จะพิมพ์ คําเตือนผ่าน: ตามด้วย คําอธิบาย ไปยังออกในข้อความสีฟ้ามิฉะนั้นจะพิมพ์ คำเตือน: ตามด้วย คําอธิบาย ให้กับออกในข้อความสีเหลือง
พารามิเตอร์
ส่งค่ากลับ
ตัวอย่างโค้ด
This code would print "Warning: this action is invalid" to the output, in yellow text.
local TestService = game:GetService("TestService")
TestService:Warn(false, "this action is invalid")
Run
รันสคริปต์ที่เป็นพ่อของ TestService