Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.09.2013, 04:34
mcm вне форума Посмотреть профиль Отправить личное сообщение для mcm Найти все сообщения от mcm
  № 1  
Ответить с цитированием
mcm

Регистрация: Apr 2006
Сообщений: 28
По умолчанию Как можно тестировать internal классы?

Добрый день.
Имеем большой проект с более чем 200 классами, половина из которых определена как internal.
Классы аккуратно разложены в древовидном пакете, всё логично и понятно.

Задача: написать unit тесты для internal классов.
Условие: все тесты будут в другом древовидном пакете.
Окружение: FlashBuilder 4.7 и встроенный в него FlexUnit4, используемый для написания и выполнения тестов.

Задача решилась бы просто, если бы каждый test case был в том же пакете, что и internal класс, но это сильно захламит и без того большой проект, с которым работают люди, поэтому хотелось бы держать все тесты в отдельном древовидном пакете.

Второй вариант: сделать все internal классы как public, но это тоже не вариант для этого проекта. Хотя... есть ли какой нибудь способ автоматически менять internal на public при запуске теста?

Есть ли какие ещё варианты решения данной задачи? Поделитесь информацией как вы тестите internal классы.

Добавлено через 5 часов 11 минут
нагуглил решение, которое удовлетворяет задачу на 100%. Возможно, кому-нибудь будет интересно:

Создаём новый FlexProject чисто под тесты и просто навсего добавляем ссылку на наш проект (например, это можно сделать через свойства проекта в разделе Flex Build Path, выбираем закладку Source Path и добавляем наш проект). А дальше в новом проекте создаём аналогичную структуру, что и у большого проекта и размещаем в ней наши testCase, которые без особо труда теперь работают с internal классами.

Получается идеальное решение, т.к. большой проект даже и не знает, что его тестируют, ведь все тесты находятся в специальном новом FlexProject.

Старый 11.09.2013, 16:56
zuxul вне форума Посмотреть профиль Отправить личное сообщение для zuxul Найти все сообщения от zuxul
  № 2  
Ответить с цитированием
zuxul

Регистрация: Dec 2009
Адрес: 59°13′N, 39°54′E
Сообщений: 445
Записей в блоге: 1
Новый проект это очень правильно в данном случае. Но, добавить в проект дополнительную папку с, например, тестами, можно и без нового проекта. Просто добавить еще один SourcePath (в котором такая же структура папок), и все internal классы можно как-нибудь использовать.

Старый 11.09.2013, 22:58
mcm вне форума Посмотреть профиль Отправить личное сообщение для mcm Найти все сообщения от mcm
  № 3  
Ответить с цитированием
mcm

Регистрация: Apr 2006
Сообщений: 28
zuxul, действительно, тоже хороший вариант, спасибо.

Создать новую тему Ответ Часовой пояс GMT +4, время: 19:18.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
flexunit4 , internal классы
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 19:18.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.