Я сейчас пытаюсь написать свой собственный фреймворк для тестирования(Visual studio, C#, Selenium, NLog). Пока что только учусь на автоматизатора, но уже есть очень неплохие наработки.
Ближе к делу: Фреймворк будет поддерживать запуск тестов в паралели.
Проблема в следующем: я не понимаю как залогировать название теста, который выполняется в данную секунду, окроме как записывать его название вручную.
Есть идеи как возможно реализовать?
вопрос №2: есть ли возможность юзать логи самого селениума, но
а. изменять вручную детальность логов
б. сохранять логи отдельного теста в отдельный файл
в. указать шаблон записи логов, как это возможно в NLog.
Информацию искал, но не нашел. =(((
Пишу свою утилику для запуска тестов паралельно до написания фреймворка.
Тесовые запуски тестов, конечно же, через вижуалку ( VSTest.Console ), в експресс вижуалке нет встроенного MSTest
Если ты пишешь свой test framework, который не использует имеющиеся фреймворки запуска тестов, то метод для получения имени теста, выполняющегося в данный момент, ты должен написать сам!
Вопрос только зачем изобретать велосипед? В NUnit нет возможности параллельного запуска?
joemast, логи раннера и логи с тестов – разные вещи. =) Заметь, ведь сам селениум где-то берет название теста и пишет в логе, и без логирования с раннера. Так ведь? =)
Ответ более чем простой: научится делать самому велосипед важнее в плане прокачки скилов. У меня нету иллюзий что я сделаю что-то мега-новаторское.
Но я хочу научится как можно большему за как можно меньший период времени. А значит и задачи перед мной должны стоять более сложные. А использование готового продукта – не то.
Ответы на конкретно заданные вопросы в самой теме знаешь? Или только чужими наработками пользоваться? =)
А я вот хочу уметь и сам написать уметь, и пользоватся чужими наработками.
Selenium знать ничего не знает ни о каких тестах и логах. Это библиотека для работы с браузером
Зависит от того какие скилы ты прокачиваешь. Если скилл изобретения велосипеда, то да. А если автоматизатора, то ты ошибаешься. Автоматизатору нужно хорошо знать имеющийся инструментарий и уметь с ним работать. Это позволяет решать задачи эффективнее.
Ответ я уже дал - для достижения твоих целей уже есть готовые инструменты. Научись с ними работать и ты достигнешь большего, чем через изобретение своего велосипеда с квадратными колесами. Для большего прогресса читай исходники этих инструментов.
Лог здесь пишет selenium-server-standalone, который тебе вообще говоря и не нужен, если браузер установлен на той же машине, где работают тесты.
В любом случае этот лог тебе ничем не поможет - в него пишется только взаимодействие с браузером: какие запросы к каким элементам идут и с каким результатом. Ничего своего ты в этот лог не запишешь, потому что его пишет сам сервер.
Короче, учи матчасть. Нет ничего зазорного в том, чтобы научиться пользоваться тем, что до тебя годами разрабатывали умные ребята. На одно только это изучение у тебя уйдет не один год. А велосипед всегда успеешь изобрести
Абсолютно идентичнЬІй лог пишет локально, если не подключать селениум сервер =)
И я знаю что в даном случае селениум сервер не нужен. Подключал тестово его =)
Конечно же можно. Но только если с аргументированной критикой =)
Как по стилистике написания кода, так и по оптимальности выбранных способов решения задач.