Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
The plugin installed gracefully, with no errors
Server metrics [RAM: ▲1.70MB] [CPU: ▲17.00ms] Passed 4 tests
Analyzing server-side resources used by Groups
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.51 ▲1.04 | 48.25 ▲10.48 |
Dashboard /wp-admin | 5.24 ▲1.89 | 81.85 ▲25.30 |
Posts /wp-admin/edit.php | 5.37 ▲2.01 | 70.20 ▲21.57 |
Add New Post /wp-admin/post-new.php | 7.87 ▲1.98 | 115.34 ▲18.04 |
Media Library /wp-admin/upload.php | 5.11 ▲1.87 | 50.98 ▲17.90 |
Server storage [IO: ▲2.14MB] [DB: ▲0.01MB] Passed 3 tests
Analyzing filesystem and database footprints of this plugin
This plugin was installed successfully
Filesystem: 138 new files
Database: 5 new tables, 7 new options
New tables |
---|
wp_groups_group_capability |
wp_groups_user_group |
wp_groups_group |
wp_groups_user_capability |
wp_groups_capability |
New WordPress options |
---|
can_compress_scripts |
db_upgraded |
groups_plugin_version |
widget_recent-posts |
widget_theysaidso_widget |
widget_recent-comments |
theysaidso_admin_options |
Browser metrics Passed 4 tests
An overview of browser requirements for Groups
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 1,611 ▼1,150 | 10.29 ▼4.27 | 1.59 ▼0.02 | 43.36 ▲1.89 |
Dashboard /wp-admin | 2,237 ▲57 | 5.59 ▼0.02 | 87.13 ▼1.33 | 41.44 ▲1.34 |
Posts /wp-admin/edit.php | 2,303 ▲200 | 2.52 ▲0.52 | 49.92 ▲14.01 | 35.38 ▼2.50 |
Add New Post /wp-admin/post-new.php | 6,527 ▲4,999 | 27.97 ▲4.89 | 858.87 ▲175.56 | 38.14 ▼18.52 |
Media Library /wp-admin/upload.php | 1,451 ▲54 | 4.27 ▲0.17 | 93.59 ▼21.63 | 43.75 ▼3.89 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.01MB] 50% from 4 tests
🔸 Tests weight: 35 | The uninstall procedure must remove all plugin files and extra database tables
It is recommended to fix the following
- The plugin did not uninstall successfully, leaving 5 tables in the database
- wp_groups_user_group
- wp_groups_group
- wp_groups_user_capability
- wp_groups_capability
- wp_groups_group_capability
- This plugin does not fully uninstall, leaving 7 options in the database
- theysaidso_admin_options
- widget_theysaidso_widget
- groups_plugin_version
- widget_recent-posts
- can_compress_scripts
- db_upgraded
- widget_recent-comments
Smoke tests Passed 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
Good news, no errors were detected
SRP Passed 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
Everything seems fine, however this is by no means an exhaustive test
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for browser errors
Everything seems fine on the user side
Optimizations
Plugin configuration 97% from 29 tests
readme.txt 94% from 16 tests
The readme.txt file uses markdown syntax to describe your plugin to the world
These attributes need to be fixed:
- Tags: Please reduce the number of tags, currently 21 tag instead of maximum 10
groups/groups.php Passed 13 tests
"Groups" version 2.18.0's main PHP file describes plugin functionality and also serves as the entry point to any WordPress functionality
108 characters long description:
Groups provides group-based user membership management, group-based capabilities and content access control.
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | This is a short overview of programming languages used in this plugin, detecting executable files
Success! There were no dangerous files found in this plugin27,553 lines of code in 91 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PO File | 13 | 3,813 | 5,875 | 12,711 |
PHP | 52 | 1,369 | 3,981 | 9,592 |
JavaScript | 7 | 486 | 1,052 | 2,758 |
CSS | 12 | 25 | 199 | 2,348 |
Sass | 3 | 12 | 0 | 108 |
JSON | 1 | 0 | 0 | 21 |
SVG | 3 | 0 | 0 | 15 |
PHP code Passed 2 tests
A short review of cyclomatic complexity and code structure
All good! No complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.46 |
Average class complexity | 41.66 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 153.00 |
Average method complexity | 5.84 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 63.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 1 | |
Traits | 0 | |
Classes | 34 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 34 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 296 | |
▷ Static methods | 276 | 93.24% |
▷ Public methods | 279 | 94.26% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 17 | 5.74% |
Functions | 31 | |
▷ Named functions | 30 | 96.77% |
▷ Anonymous functions | 1 | 3.23% |
Constants | 117 | |
▷ Global constants | 44 | 37.61% |
▷ Class constants | 73 | 62.39% |
▷ Public constants | 73 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
Using a strong compression for your PNG files is a great way to speed-up your plugin
27 PNG files occupy 0.09MB with 0.04MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
images/remove.png | 0.22KB | 0.16KB | ▼ 26.46% |
images/add-ons/groups-gravity-forms.png | 4.26KB | 2.39KB | ▼ 43.85% |
images/add-ons/affiliates-enterprise.png | 5.92KB | 3.07KB | ▼ 48.24% |
images/add-ons/woocommerce-groups-newsletters.png | 5.02KB | 2.66KB | ▼ 47.00% |
images/add-ons/groups-forums.png | 3.96KB | 2.26KB | ▼ 42.77% |