Код: Выделить всё
const metrics = new MetricsBuilder();
const k6Runner = new K6Runner();
export const setup = () => k6Runner.doSetup();
export const options = k6Runner.getOptions();
export default () => k6Runner.run();
Однако у меня есть несколько проблем: < /p>
# init в контексте и поведении SharedArray
Согласно документации, контекст init работает один раз на виртуальный пользователь (VU), в то время как SharedArray только инициализируется один раз и обменивается всем VUS. Я заметил, что класс MetricsBuilder инициализируется для каждого VU в контексте Init, но я не вижу существенной разницы в отчетах. Управляется ли K6 с этим? > Инициализация одного и того же объекта несколько раз в контексте init (один на VU) негативно влияет на производительность или результаты?
# Инициализация классов в Инициатор Контекст
Я заметил, что инициализация класса, такого как k6runner в контексте init (например, const k6runner = new k6runner (); ) приводит к тому же количеству экземпляров, создаваемых как количество vus.
# Является ли этот подход плохой практикой?
Приведет ли это к любым вопросам, таким как чрезмерное использование ресурсов или неожиданные побочные эффекты? /> Если мы перенесем несколько наборов данных из разных экземпляров SharedArray конструктору в K6Runner , есть ли известные проблемы или ограничения? До сих пор я не сталкивался с какими-либо проблемами, но я хочу убедиться, что это безопасная практика в K6. < /p>
Существуют ли какие-либо лучшие методы использования подхода на основе класса в сценариях K6 для управления метриками и модульной логикой выполнения тестов? < /p>
или рекомендации по структурированию крупномасштабных испытательных сценариев K6 таким образом, чтобы избежать избыточности при сохранении производительности и точности. Заранее спасибо.
Подробнее здесь: https://stackoverflow.com/questions/794 ... d-practice
Мобильная версия