Rally API - Criar TestCaseResult - DateTime problema
Pergunta
eu estou usando o Rally soap API para criar um novo TestCaseResult contra um caso de teste que tenha sido criado anteriormente.Mas eu recebo um erro quando eu criar o resultado - 'erro de Validação:TestCaseResult.A data não deve ser nulo'
Não sei por que esse deve ser o caso - você pode ajudar?
private Boolean createTestResultForTest(String aResult, String aTestCase)
{
TestCaseResult myTestCaseResult = new TestCaseResult();
myTestCaseResult.Build = "1";
DateTime myDate = DateTime.Now;
myTestCaseResult.Date = myDate;
String myQuery = "(FormattedID = " + aTestCase + ")";
QueryResult myTestCaseReturn = m_rallyService.query(m_workspace, "TestCase", myQuery, "", true, 0, 100);
long mycount = myTestCaseReturn.TotalResultCount;
if (mycount > 0)
{
TestCase myTestCase = (TestCase)myTestCaseReturn.Results[0];
myTestCaseResult.TestCase = myTestCase;
}
else
{
return false;
}
myTestCaseResult.Verdict = aResult;
CreateResult myCreateTestResultResult = m_rallyService.create(myTestCaseResult);
if (hasErrors(myCreateTestResultResult))
{
updateStatus("Could not create test result for test case:" + myTestCaseResult.TestCase.Name);
printWarningsErrors(myCreateTestResultResult);
return false;
}
else
{
myTestCaseResult = (TestCaseResult)myCreateTestResultResult.Object;
myTestCaseResult = (TestCaseResult)m_rallyService.read(myTestCaseResult);
updateStatus("Created TestCaseResult: " + myTestCaseResult.TestCase.Name + ", ref = " + myTestCaseResult.@ref);
}
return true;
}
Solução
Eu acredito que você tenha de executar um bug conhecido com o Rali da API SOAP que eu tinha esquecido até agora.Basicamente, o erro é que mesmo quando você especificar uma Data/Hora válido objeto em sua TestCaseResult, o SABÃO serializador não reconhecer isso, a menos que você também definir um sinalizador específico para ser verdadeira, i.e.:
myTestCaseResult.DateSpecified = true;
Por favor, defina o sinalizador, e volte a executar o código deve funcionar agora :)