- Форум тестировщиков
- → Публикации nonameunit
Публикации nonameunit
5 публикаций создано nonameunit (учитываются публикации только с 05 июня 2023)
По типу контента
По пользователю
#106089 Вызов функции из self-testing app
Отправлено автор: nonameunit 30 мая 2012 - 08:00 в SmartBear (AutomatedQA) - Functional Testing
В аттаче все включая ТС проект и приложение для тестов.
#106086 Вызов функции из self-testing app
Отправлено автор: nonameunit 30 мая 2012 - 07:54 в SmartBear (AutomatedQA) - Functional Testing
deleted
#106047 Вызов функции из self-testing app
Отправлено автор: nonameunit 29 мая 2012 - 08:43 в SmartBear (AutomatedQA) - Functional Testing
Добрый день.
Пытаюсь разобраться с фичей self-testing application. Идея стандартна - использовать её для того что бы сделать юай к фреймворку.
Возник вопрос. Если в некотором сьюте "Suite", в проекте "Project", а именно в его script unit'е "Functions" есть функция "MyFunc" можно ли её вызвать в self-testing app и каим образом будет выглядеть строчка кода с вызовом?
UPD
Было найдено что то подходящее, но обе строчки падают с ошибкой TargetInvocationException:
Пытаюсь разобраться с фичей self-testing application. Идея стандартна - использовать её для того что бы сделать юай к фреймворку.
Возник вопрос. Если в некотором сьюте "Suite", в проекте "Project", а именно в его script unit'е "Functions" есть функция "MyFunc" можно ли её вызвать в self-testing app и каим образом будет выглядеть строчка кода с вызовом?
UPD
Было найдено что то подходящее, но обе строчки падают с ошибкой TargetInvocationException:
Integration["RunRoutine"].Call("Project","Functions","MyFunc"); Integration["RunRoutine"]("Project","Functions","MyFunc");
#106087 Вызов функции из self-testing app
Отправлено автор: nonameunit 30 мая 2012 - 07:54 в SmartBear (AutomatedQA) - Functional Testing
Собственно вот так выглядит код.
при работе через COM т.е. ссылаясь на
А вот попытки работать с ТС через
public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { TestClass tcls = new TestClass(); ThreadStart thrd_start = new ThreadStart(tcls.RunTest); Thread thrd = new Thread(thrd_start); thrd.Start(); } } public class TestClass : Connect { public void RunTest() { string s = Path.GetFullPath("..\\..\\TCProject\\WinFormsApp.pjs"); Connect.RunTest("Test Self-Testing App", "Main", s); Connect.Integration["RunRoutine"].Call("Main", "Functions", "ErrorDialog"); Connect.Integration["RunRoutine"]("Main", "Functions", "ErrorDialog"); //var p = Sys["Process"]("MainFormProcess"); //var f = Sys["WinFormsObject"]("MainForm"); //var b = Sys["WinFormsObject"]("buttonError"); //var res = b["Click"](); //var bb = Aliases["WinFormsObject"]("buttonError")["Click"](); Connect.StopTest(); } }
при работе через COM т.е. ссылаясь на
using System.Runtime.InteropServices; using TestComplete;все работает отлично, спасибо что напомнили что и так можно.
А вот попытки работать с ТС через
using AutomatedQA.script; using AutomatedQA.TestComplete;ничего не получается. Строки с вызовом скрипта падают с TargetInvocationException, а в строках где есть обращение к контролу просто не находит ни процесс ни форму.
#106168 Вызов функции из self-testing app
Отправлено автор: nonameunit 01 июня 2012 - 06:55 в SmartBear (AutomatedQA) - Functional Testing
Здравствуйте.
Здесь бы весь код посмотреть, в частности что есть Integration в данном случае (тип, переменная), находится ли ТС в состоянии запуска и т.п. А работает ли у вас стандартный пример из раздела справки Calling Script Routines via COM?
Когда мне надо было работать с ТС по COM, я предпочитал использовать класс Connect, с которым работать много легче.
Нет идей почему стандартный пример не работает? (в ТС контролы находятся, а из С# кода написанного по примеру - нет)
- Форум тестировщиков
- → Публикации nonameunit
- Политика Конфиденциальности
- Правила форума ·