Как проводить автоматизированное тестирование в интеллектуальных бизнес-системах (BI)

В настоящее время я работаю над системой Business Intelligent (BI), и теперь я хочу создать несколько автоматических тестов, если это возможно.

Я понятия не имею, как я могу разработать автоматизированный тест для этого проекта BI. Есть ли у кого-нибудь опыт тестирования BI раньше?

Мне просто нужна идея для этого тестирования.

Вот краткое описание моего проекта.

  1. Мой проект будет запрашивать данные из любого заинтересованного источника данных в наш источник данных под названием ReportDB (схема MySql), используя talend в качестве инструмента ETL.
  2. From ReportDB, I will export data to the following format as below
    • CSV file using Talend as a tool for exporting and summarizing data
    • Static Web с использованием Eclipse BIRT в качестве инструмента для экспорта и суммирования данных

person user1727608    schedule 08.10.2012    source источник


Ответы (3)


Я тоже изучаю нечто подобное, но для стека MS.

Автоматизированное тестирование для систем бизнес-аналитики кажется довольно сложным, поскольку код имеет тенденцию быть либо более закрытым, либо его труднее изолировать.

Вещи, которые мы сделали/расследовали, включают:

  • Переместите код во внешние модули, такие как библиотеки DLL, и протестируйте их с помощью тестовых адаптеров/привязок.
  • Кодирование внешних правил в тестовых средах тестирования исходной и целевой баз данных для обнаружения таких вещей, как ненужные данные или недопустимые преобразования.
  • Используйте подходы, основанные на модели, для унификации построения общих аспектов — etls, таблиц и кубических структур, а также для обеспечения их целостности с протестированными шаблонами.
  • Используйте систему управления исходным кодом, чтобы сохранить контроль над конфигурациями в режиме реального времени/тестирования/разработки и добавить тесты, чтобы убедиться, что они соответствуют требуемым подходам.
  • создавать отчеты из общих компонентов, изолируя производителей и потребителей запросов

Еще многое предстоит сделать, и это эволюционный процесс.

person Preet Sangha    schedule 08.10.2012

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

Вы можете поддерживать либо тестовый источник данных, либо набор тестовых CSV-файлов в зависимости от того, какие входные данные ожидает ваш процесс. С Talend вы можете использовать контекстные переменные, чтобы переключать исходный код между производством и тестированием без перекомпиляции процесса.

Чтобы создать целевые выходные данные, вы можете либо сделать это вручную, либо запустить процесс сначала на своих тестовых данных, а затем проверить выходные данные построчно, чтобы проверить их.

Затем вы можете реализовать довольно простой автоматизированный процесс проверки для сравнения результатов выполнения теста со стандартным набором результатов теста. Это должно было бы открыть оба набора результатов и сравнить каждую строку и столбец на равенство.

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

person Born2BeMild    schedule 29.10.2012

Вы можете использовать Selenium WebDriver для запуска интеграционных тестов на страницах статического отчета. Имейте предопределенные данные для вашего отчета. Запустите Eclipse birt и получите доступ к отчету Selenium в браузере. Напишите тесты селена, чтобы проверить наличие ожидаемых данных на странице.

person Rebzie    schedule 30.10.2012