Я использую TestComplete 11 с кодом JScript в скриптах - без тестов на ключевые слова.TestComplete - неверная ошибка перекрестных ссылок
У меня ошибка перекрестной ссылки неверная. Я проверил все объявления USEUNIT ссылочных единиц, и они НЕ ссылаются друг на друга, но я все время получаю эту ошибку.
EX:
Unit DataCheck:
//USEUNIT Button
//USEUNIT Lots of other Units
Unit Button
//USEUNIT Input
//USEUNIT Map
//USEUNIT Utilities
ОШИБКА: Ошибка синтаксиса (ы) Блоки кнопки и DataCheck ссылаются друг на друга. Перекрестные ссылки не допускаются в единицах JScript.
Ошибка locationL Единица измерения: "Кнопка" Линия 4 Колонка: 1
Эммм ..... линия 4 нет данных! SIGROWL
Удалить Утилиты с кнопки и не допускать ошибок, но тогда к функции, недоступной для кнопки, невозможно получить доступ.
Любые идеи?
Хорошо. У меня возникают некоторые проблемы, обертывающие мою голову вокруг этой концепции. Я обнаружил оскорбительную функцию в совершенно другом модуле. Если я переведу его в DataCheck, ошибок не будет. Если я переведу его в любое другое подразделение и добавлю ссылку на DataCheck, ошибка. Итак, если я правильно понимаю, ссылаются те потоки Utilities> ExButton> DataCheck> Button> Utilities? (ExButton является исходным расположением функции нарушения) – Brandy
Да, это четкая круговая эталонная ситуация. Чтобы этого избежать, вам необходимо иметь библиотечные модули (например, служебные программы в вашем случае), которые не ссылаются ни на какие другие единицы. Если у вас есть некоторые константы или конструкции, принадлежащие определенному модулю (например, A) и должны использоваться модулем Utilities, вам необходимо переместить эти константы/конструкции на новый блок без каких-либо ссылок (например, A_Utils) и ссылаться на них как с обоих A и Utilities. Это довольно распространенная ситуация, и, например, в C++ вы сталкиваетесь с таким же поведением. –
Большое вам спасибо за помощь! – Brandy