GSServer-CBT/soggy_resources/lua/UAuto/TestCases/UAutoLuaTestCaseExample.lua

89 lines
2.2 KiB
Lua
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

--baseClass提供基础接口
local baseClass = require('UAuto/Base/UAutoLuaTestBase')
--所有testcase继承baseClass
local UAutoLuaTestCase = class("UAutoLuaTestCaseExample",baseClass)
local self = UAutoLuaTestCase
--测试集名称(必选)
UAutoLuaTestCase.TestFixture = "UAutoLuaTestCaseExample"
--测试集所属分类(可选)
--UAutoLuaTestCase.Category = "All"
--测试集执行顺序(可选)
UAutoLuaTestCase.Order = 99
--测试集描述(可选)
--UAutoLuaTestCase.Description = "Base Description"
--测试case
UAutoLuaTestCase.MonoTest1 = {
--当前case执行顺序
Order=2,
--当前case分类
Category="UI",
--测试case类型MonoTest 游戏中测试以协程方式执行可以通过yield_return释放控制权不会卡住游戏
Type = CaseType.MonoTest,
--case描述
Description = "I am MonoTest1.",
--具体case的执行逻辑MonoTest类型需用UAutoCoroutine开头
Action = UAutoCoroutine(
function()
print("corotine start")
local t = os.time()
yield_return(CS.UnityEngine.WaitForSeconds(10))
print("wait 10 sec: "..os.time() - t)
t = os.time()
yield_return(CS.UnityEngine.WaitForEndOfFrame())
print("WaitForEndOfFrame: "..os.time() - t)
-- 调用嵌套的coroutine用UAutoCoroutine包装嵌套协程函数需在最后另加上()括号
UAutoCoroutine(UAutoLuaTestCase.internalCoroutine)()
t = os.time()
yield_return(CS.UnityEngine.WaitForSeconds(30))
print("wait another 30 sec: "..os.time() - t )
print("corotine end")
end
),
}
--嵌套协程函数测试
function UAutoLuaTestCase.internalCoroutine()
print "internalCoroutine"
local t = os.time()
yield_return(CS.UnityEngine.WaitForSeconds(10))
print ("internalCoroutine after 10 sec:"..os.time() - t)
end
--普通类型测试
UAutoLuaTestCase.Test1 = {
Order=1,
Category="UI",
Type = CaseType.Test,
Description = "I am Test1.",
Action = function()
print("UAutoLuaTestCase1.Test")
end
}
--环境准备
UAutoLuaTestCase.SetUp = {
Type = CaseType.SetUp,
Action = function()
assert(1==2,"error test")
print("UAutoLuaTestCase1.SetUp")
end
}
--环境清理
UAutoLuaTestCase.TearDown = {
Type = CaseType.TearDown,
Action = function()
print("UAutoLuaTestCase1.TearDown")
end
}
--一定要返回当前类对象
return UAutoLuaTestCase