Всем привет. Столкнулся со сл. проблемой. Пишу автотесты на Jscript (TestComplete). Вызываю метод класса тестируемого приложения, которому нужно передать null. Вот в этом и заключается проблема т.к. выдает "Mismatch Types". Вызываю аналогичный метод, которому null не нужен - и все работает. Проблема в том, что Jscript null и dotNet Null - разные "вещи".
Скажите плз. как сконвертировать Jscript null и dotNet Null ?
Заранее спасибо.
Конвертация Jscript null в dotNet Null
Автор ViktorUvpv, 02 фев 2010 21:01
Сообщений в теме: 3
#1
Отправлено 02 февраля 2010 - 21:01
#2
Отправлено 04 февраля 2010 - 06:45
Здравствуйте.
Самым простым решением мне кажется получение нужного 'null' из какого-нибудь метода или свойства объекта приложения. Например:
Самым простым решением мне кажется получение нужного 'null' из какого-нибудь метода или свойства объекта приложения. Например:
var dotNetNull = Sys.Process("MyProcess").AppDomain("MyProcess").dotNET.System.Exception.zctor().InnerException;
С уважением,
Дмитрий
Дмитрий
#3
Отправлено 29 марта 2010 - 13:26
Всем привет))
Да. Вызывал .Net метод, который возвращает Null, но не помогло. Обходное решение все же было найдено. Программисты перегрузили нужный мне метод без Null параметра и вызвать его удалось))
Но как Вы понимаете - это не самое оптимальное решение(
Да. Вызывал .Net метод, который возвращает Null, но не помогло. Обходное решение все же было найдено. Программисты перегрузили нужный мне метод без Null параметра и вызвать его удалось))
Но как Вы понимаете - это не самое оптимальное решение(
#4
Отправлено 14 апреля 2010 - 11:47
Сам столкнулся с такой проблемой. Долго ковырялся, потом пришел к выводу, что у неравенства [JScript null] != [.NET null] есть своя, глубокая причинаВсем привет))
Да. Вызывал .Net метод, который возвращает Null, но не помогло. Обходное решение все же было найдено. Программисты перегрузили нужный мне метод без Null параметра и вызвать его удалось))
Но как Вы понимаете - это не самое оптимальное решение(
Но проблему я все-таки решил, просто используя непроинициализированную переменную в JScript:
[JScript]
function Main()
{
var dotNETNull;
var testedObject = Sys.Process("WindowsApplication1").WinFormsObject("Form1", "Form1");
Log.Message(testedObject.IsNull(dotNETNull));
}А вот и код моего тестового метода в классе формы:[C#]
public partial class Form1 : Form
{
...
public bool IsNull(object o)
{
return o == null;
}
}Все работает!
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных

