Выведите текстовый файл из Ranorex, включив в него только результат "пройдено / не пройдено" и число
Я пытаюсь заставить Ranorex вывести текстовый файл, который будет выглядеть следующим образом:
Проходить
74
Результат прохождения / неудачи будет получен в зависимости от того, пройден тест или нет. Число будет жестко запрограммировано, и все, что мне нужно сделать, это сохранить его в переменной и включить в вывод.
Я бы подумал, что это было бы просто, но я изо всех сил пытаюсь получить какую-либо помощь от Ranorex. Хотя я мог бы использовать функцию отчетов, изменить тип выходного файла и структуру отчета, но это тоже не сработало.
Хотя я привык к Ranorex и пишу свой собственный код пользователя, я новичок в его адаптации таким образом.
Весь мой код пользователя написан на C#
Кто-нибудь может предложить какую-либо помощь?
Спасибо!
Редактировать: Итак, теперь мне удалось заставить Ranorex вывести текстовый файл, и я могу поместить в него любой текст, включая строку, хранящуюся в переменной.
Однако я изо всех сил стараюсь сохранить результат теста / неудачи в строке, которую я могу вывести.
2 ответа
Я нашел способ сделать это, однако он опирается на следующее:
- Код пользователя должен быть в отдельном тесте
- Этот отдельный тест должен существовать в контрольном примере с тем, в котором находится ваш основной тест
- И этот тестовый случай, и случай, содержащий ваш основной тест, должны быть частью родительского теста
Например:
Родительский тк
.....- AddUser TC
.........- ГЛАВНЫЙ ТЕСТ
.....- AddUser FailCheck
.........- КОД ПОЛЬЗОВАТЕЛЯ
Затем вы можете установить свой AddUser TC на "Продолжить с братом по ошибке"
Код пользователя выглядит следующим образом:
public static void Output()
{
string result = "";
ITestCase iCase = TestSuite.Current.GetTestCase("Add_User_Test"); // The name of your Test Case
if(iCase.Status == Ranorex.Core.Reporting.ActivityStatus.Failed){
result = "Failed"; }
if(iCase.Status == Ranorex.Core.Reporting.ActivityStatus.Success){
result = "Passed"; }
int testrunID = 79;
using (StreamWriter writer =
new StreamWriter("testresult.txt"))
{
writer.WriteLine(testrunID);
writer.WriteLine(result);
}
}
Это возьмет testrunID (специфичный для каждого теста) и результат теста и выведет его в текстовый файл.
Идея состоит в том, чтобы затем прочитать файл с помощью пользовательского Java-приложения, которое я разработал, и поместить данные в программу управления тестовыми сценариями, такую как QA Complete, которая может автоматически помечать тесты как пройденные / неудачные.
Вы можете запустить тестовый набор напрямую, используя метод TestSuiteRunner.Run(). Это позволит вам взглянуть на возвращаемое значение этого напрямую и на выходной проход или сбой на основе возвращаемого значения.
http://www.ranorex.com/Documentation/Ranorex/html/M_Ranorex_Core_Testing_TestSuiteRunner_Run.htm
if(TestSuiteRunner.Run(typeof({testSuiteclass}),{Command Line Arguments})==0)
{
File.WriteLine("success");
}
else
{
File.WriteLine("failure");
}