Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
The plugin installed gracefully, with no errors
Server metrics [RAM: ▲0.06MB] [CPU: ▼7.73ms] Passed 4 tests
Analyzing server-side resources used by Easy Split Test Tab
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.52 ▲0.06 | 36.51 ▼9.06 |
Dashboard /wp-admin | 3.38 ▲0.03 | 46.16 ▼14.95 |
Posts /wp-admin/edit.php | 3.49 ▲0.14 | 49.16 ▲3.57 |
Add New Post /wp-admin/post-new.php | 5.96 ▲0.07 | 88.11 ▼10.49 |
Media Library /wp-admin/upload.php | 3.30 ▲0.07 | 40.32 ▲7.91 |
Help /wp-admin/admin.php?page=easy-split-test-tab-help | 3.46 | 31.90 |
Experiments /wp-admin/admin.php?page=easy-split-test-tab | 3.32 | 37.43 |
Options /wp-admin/admin.php?page=easy-split-test-tab-setting-admin | 3.27 | 34.09 |
Server storage [IO: ▲0.31MB] [DB: ▲0.00MB] Passed 3 tests
Input-output and database impact of this plugin
This plugin installed successfully
Filesystem: 22 new files
Database: 1 new table, 8 new options
New tables |
---|
wp_easy_splittest_tab |
New WordPress options |
---|
easy_splittest_tab_credits |
easy_splittest_tab_noindex |
widget_recent-comments |
widget_theysaidso_widget |
db_upgraded |
widget_recent-posts |
can_compress_scripts |
theysaidso_admin_options |
Browser metrics Passed 4 tests
Easy Split Test Tab: an overview of browser usage
Minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,946 ▲185 | 13.44 ▼1.28 | 9.39 ▲7.34 | 37.94 ▼7.81 |
Dashboard /wp-admin | 2,225 ▲48 | 5.76 ▲0.17 | 87.81 ▼6.57 | 85.37 ▲44.10 |
Posts /wp-admin/edit.php | 2,138 ▲38 | 2.03 ▲0.04 | 35.78 ▼3.45 | 31.41 ▼5.41 |
Add New Post /wp-admin/post-new.php | 1,707 ▲172 | 22.28 ▼2.55 | 672.95 ▲52.32 | 53.95 ▼11.37 |
Media Library /wp-admin/upload.php | 1,441 ▲44 | 4.23 ▲0.01 | 98.32 ▼6.01 | 76.59 ▲33.91 |
Help /wp-admin/admin.php?page=easy-split-test-tab-help | 892 | 1.68 | 30.84 | 34.17 |
Experiments /wp-admin/admin.php?page=easy-split-test-tab | 1,071 | 1.71 | 26.40 | 26.93 |
Options /wp-admin/admin.php?page=easy-split-test-tab-setting-admin | 901 | 2.05 | 29.95 | 30.95 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests
🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
You still need to fix the following
- Zombie tables detected upon uninstall: 1 table
- wp_easy_splittest_tab
- This plugin does not fully uninstall, leaving 8 options in the database
- widget_recent-comments
- easy_splittest_tab_credits
- db_upgraded
- theysaidso_admin_options
- widget_theysaidso_widget
- can_compress_scripts
- widget_recent-posts
- easy_splittest_tab_noindex
Smoke tests 25% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
These errors were triggered by the plugin
- > GET request to /wp-admin/admin.php?page=easy-split-test-tab-help
- > User deprecated in wp-includes/functions.php+5643
File rss.php is deprecated since version 3.0.0! Use wp-includes/class-simplepie.php instead.
- > GET request to /wp-admin/admin.php?page=easy-split-test-tab-help
- > Notice in wp-content/plugins/easy-split-test-tab/admin/st_help_page.php+40
Trying to get property 'items' of non-object
- > GET request to /wp-admin/admin.php?page=easy-split-test-tab-help
- > Warning in wp-content/plugins/easy-split-test-tab/admin/st_help_page.php+40
array_slice() expects parameter 1 to be array, null given
SRP 50% from 2 tests
🔹 Tests weight: 20 | The single-responsibility principle: PHP files have to remain inert when accessed directly, throwing no errors and performing no actions
Please fix the following
- 7× PHP files trigger errors when accessed directly with GET requests:
- > PHP Warning
Use of undefined constant ABSPATH - assumed 'ABSPATH' (this will throw an Error in a future version of PHP) in wp-content/plugins/easy-split-test-tab/admin/split-test-admin-tables.php on line 3
- > PHP Fatal error
require_once(): Failed opening required 'ABSPATHwp-admin/includes/class-wp-list-table.php' (include_path='.:/usr/share/php') in wp-content/plugins/easy-split-test-tab/admin/split-test-admin-tables.php on line 3
- > PHP Fatal error
Uncaught Error: Call to undefined function _e() in wp-content/plugins/easy-split-test-tab/admin/split-test-options.php:4
- > PHP Warning
require_once(ABSPATHwp-admin/includes/class-wp-list-table.php): failed to open stream: No such file or directory in wp-content/plugins/easy-split-test-tab/admin/split-test-admin-tables.php on line 3
- > PHP Fatal error
Uncaught Error: Call to undefined function _e() in wp-content/plugins/easy-split-test-tab/admin/st_help_page.php:9
- > PHP Warning
Use of undefined constant EASY_SPLITTEST_TAB_URL - assumed 'EASY_SPLITTEST_TAB_URL' (this will throw an Error in a future version of PHP) in wp-content/plugins/easy-split-test-tab/admin/st_help_page.php on line 8
- > PHP Warning
Use of undefined constant EASY_SPLITTEST_TAB_URL - assumed 'EASY_SPLITTEST_TAB_URL' (this will throw an Error in a future version of PHP) in wp-content/plugins/easy-split-test-tab/admin/split-test-options.php on line 3
- > PHP Warning
User-side errors 0% from 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
These are user-side errors you should fix
- 3 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=easy-split-test-tab-setting-admin
- > Network (severe)
wp-content/plugins/easy-split-test-tab/css/easy-split-test-tab.css?ver=6.3.1 - Failed to load resource: the server responded with a status of 404 (Not Found)
Optimizations
Plugin configuration Passed 29 tests
readme.txt Passed 16 tests
Often overlooked, readme.txt is one of the most important files in your plugin
6 plugin tags: track, experiments, split test, google, goal...
easy-split-test-tab/easy-split-test-tab.php Passed 13 tests
The main PHP script in "Easy Split Test Tab" version 1.2.1 is automatically included on every request by WordPress
119 characters long description:
This plugin help you and Google Analytics to create experiments that test which version of a landing page leads better.
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | Executable files are considered dangerous and should not be included with any WordPress plugin
Everything looks great! No dangerous files found in this plugin692 lines of code in 6 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 4 | 190 | 107 | 550 |
PO File | 1 | 48 | 51 | 120 |
CSS | 1 | 6 | 0 | 22 |
PHP code Passed 2 tests
A short review of cyclomatic complexity and code structure
Everything seems fine, there were no complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.20 |
Average class complexity | 21.50 |
▷ Minimum class complexity | 20.00 |
▷ Maximum class complexity | 23.00 |
Average method complexity | 2.21 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 14.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 2 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 2 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 34 | |
▷ Static methods | 0 | 0.00% |
▷ Public methods | 34 | 100.00% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 0 | 0.00% |
Functions | 0 | |
▷ Named functions | 0 | 0.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 7 | |
▷ Global constants | 7 | 100.00% |
▷ Class constants | 0 | 0.00% |
▷ Public constants | 0 | 0.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
It is recommended to compress PNG files in your plugin to minimize bandwidth usage
11 PNG files occupy 0.09MB with 0.03MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
img/inactive.png | 0.94KB | 0.83KB | ▼ 12.11% |
img/st_logo_16x16.png | 0.61KB | 0.26KB | ▼ 57.23% |
img/st_logo_32x32.png | 1.25KB | 0.50KB | ▼ 60.31% |
img/SetSize2424-twitter.png | 1.13KB | 1.38KB | 0.00% |
img/active.png | 0.89KB | 0.79KB | ▼ 11.90% |