classicAspUnit
1.0.0
Uma estrutura de unidade ASP clássica para ajudar no teste de código asp clássico.
Instancie o contexto:
set testContext = new aspUnit
Crie um caso de teste:
set oTest = testContext.addTestCase("User Administration")Faça afirmações:
oTestMethod.AssertExists usersDB, "optional message override: {1}" ' accepts a wildcard marks for the parammeters
oTestMethod.AssertIsA usersDB, "testDB", "" ' leave blank for default message Você também pode criar configurações de teste e desmontagens para serem executadas antes e depois de cada teste para um Test Case :
sub testSetup() set usersDB = new testDB usersDB.TableName = "users" set newUser = new User newUser.id = 1 newUser.name = "Bob" usersDB.add newUser end sub sub testTeardown() set usersDB = nothing end sub
... e depois passe os nomes dos métodos para o Caso de Teste:
oTest.Setup("testSetup")
oTest.Teardown("testTeardown")Isso também funcionaria:
oTest.Setup("myGlobalObject.MyMethod(1, ""param2"", true)")Aviso: Isso usa
Executepara executar o código e aceitará qualquer string de código executável como"myVar = 1"ou"myFunction() : myOtherFunction()"
Para executar e obter os resultados dos testes:
set results = testContext.run results.Update ' This will update the test counters for passed, failed and errors
Então você pode ter acesso aos resultados e escrever a visualização que desejar:
Response.Write "Test Cases: " & results.TestCases.Count & "<br>"
Response.Write "Tests runned: " & results.Tests & ", "
Response.Write "Tests passed: " & results.Passed & ", "
Response.Write "Tests failed: " & results.Failed & ", "
Response.Write "Tests errored: " & results.Errors & "<br><br>"
' loop the testCases
for each testCase in result.TestCases.Items
Response.Write "-> Test Case: " & testCase.Name & "(" & testCase.Status & ")<br>"
' loop the tests
for each test in testCase.Tests.Items
Response.Write "--> Test: " & test.Name & "<br>"
Response.Write "----> " & test.Output & "(" & test.Status & ")<br>"
next
nextHá uma visualização de modelo com a fonte na pasta de teste.