moodle-an-hochschulen / moodle-theme_boost_union

Theme Boost Union is an enhanced child theme of Boost which is intended, on the one hand, to make Boost simply more configurable and, on the other hand, to provide helpful additional features for the daily Moodle operation of admins, teachers and students.
GNU General Public License v3.0
67 stars 60 forks source link

Behat test optimisations #765

Open marxjohnson opened 11 hours ago

marxjohnson commented 11 hours ago

This plugin has a very comprehensive suite of behat tests, which is good, especially considering the range of features it implements.

However, the current suite takes about 4 hours to run, which presents a bit of a barrier when contributing fixes.

I captured the timings (in seconds) for each feature. Looking at the smart menu tests in particular, there is definitely scope for optimising these with generators, navigation URLs and named selectors. I will submit a branch with some improvements.

{
    "theme\/boost_union\/tests\/behat\/theme_boost_union_smartmenusettings_menuitems_dynamiccourses.feature": 3099.5,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_feelsettings_blocks.feature": 3016.7,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_smartmenusettings_menuitems_rules.feature": 2833.1,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_smartmenusettings_menus_rules.feature": 2303.5,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_contentsettings_staticpages.feature": 1690.8,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_smartmenusettings_menus_presentation.feature": 1258.6,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_smartmenusettings_menuitems_presentation.feature": 1194.3,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_contentsettings_slider.feature": 1085.2,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_contentsettings_footer.feature": 784.8,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_feelsettings_navigation.feature": 486.3,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_course.feature": 468.7,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_sitebranding.feature": 424.3,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_scss.feature": 408.8,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_contentsettings_advertisementtiles.feature": 367.6,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_flavourssettings_caching.feature": 359.9,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_activitybranding.feature": 336.3,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_smartmenusettings_menuitems_management.feature": 326.6,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_loginpage.feature": 308,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_contentsettings_infobanners.feature": 296.4,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_dashboardmycourses.feature": 230.2,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_flavourssettings_application.feature": 211.4,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_smartmenusettings_menus_management.feature": 199.8,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_feelsettings_links.feature": 158.4,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_smartmenusettings_menuitems_application.feature": 155.9,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_functionalitysettings_courses.feature": 152.6,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_blocks.feature": 143.4,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_smartmenusettings_menus_application.feature": 125.4,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_flavourssettings_look.feature": 103.3,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_page.feature": 83.1,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_mobile.feature": 73,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_resources.feature": 71.9,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_flavourssettings_management.feature": 58.7,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_goodiesfordesigners.feature": 58.1,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_h5p.feature": 45,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_general.feature": 42.1,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_feelsettings_misc.feature": 41,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_functionalitysettings_administration.feature": 36.9,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_emailbranding.feature": 34.3,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_feelsettings_pagelayouts.feature": 24.1,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_managers.feature": 21.3,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_tasks.feature": 15.6,
    "theme\/boost_union\/tests\/behat\/theme_boost_union_looksettings_generalsettings.feature": 12.8
}