Benchmarks
Plugin footprint 83% 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: ▲0.10MB] [CPU: ▲12.27ms] Passed 4 tests
This is a short check of server-side resources used by WebTotem Security
Normal server usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.56 ▲0.10 | 56.02 ▲13.31 |
Dashboard /wp-admin | 3.45 ▲0.15 | 94.45 ▲46.17 |
Posts /wp-admin/edit.php | 3.49 ▲0.14 | 62.82 ▲16.58 |
Add New Post /wp-admin/post-new.php | 5.96 ▲0.08 | 96.01 ▲8.46 |
Media Library /wp-admin/upload.php | 3.30 ▲0.07 | 46.38 ▲10.71 |
Activation /wp-admin/admin.php?page=wtotem_activation | 4.00 | 91.85 |
WebTotem /wp-admin/admin.php?page=wtotem | 2.98 | 38.57 |
Server storage [IO: ▲3.17MB] [DB: ▲0.01MB] Passed 3 tests
Filesystem and database footprint
There were no storage issued detected upon installing this plugin
Filesystem: 391 new files
Database: 5 new tables, 6 new options
New tables |
---|
wp_wtotem_scan_logs |
wp_wtotem_audit_logs |
wp_wtotem_settings |
wp_wtotem_confidential_files |
wp_wtotem_blocked_list |
New WordPress options |
---|
db_upgraded |
widget_recent-comments |
theysaidso_admin_options |
widget_recent-posts |
widget_theysaidso_widget |
can_compress_scripts |
Browser metrics Passed 4 tests
An overview of browser requirements for WebTotem Security
Minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,851 ▲116 | 13.21 ▼1.11 | 1.87 ▼0.10 | 45.93 ▲1.75 |
Dashboard /wp-admin | 2,229 ▲41 | 5.80 ▲0.95 | 101.62 ▼3.91 | 71.26 ▲25.82 |
Posts /wp-admin/edit.php | 2,115 ▲26 | 1.98 ▼0.01 | 38.10 ▲0.81 | 35.33 ▲0.33 |
Add New Post /wp-admin/post-new.php | 1,536 ▲3 | 17.66 ▼5.69 | 691.80 ▲4.91 | 59.32 ▲7.64 |
Media Library /wp-admin/upload.php | 1,408 ▲20 | 4.23 ▲0.08 | 98.28 ▼8.24 | 63.54 ▲18.92 |
Activation /wp-admin/admin.php?page=wtotem_activation | 1,072 | 3.52 | 60.96 | 58.83 |
WebTotem /wp-admin/admin.php?page=wtotem | 1,066 | 3.39 | 57.23 | 61.14 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | It is important to correctly uninstall your plugin, without leaving any traces
It is recommended to fix the following
- This plugin does not fully uninstall, leaving 6 options in the database
- widget_recent-comments
- db_upgraded
- theysaidso_admin_options
- can_compress_scripts
- widget_recent-posts
- widget_theysaidso_widget
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
Good news, no errors were detected
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
- 141× GET requests to PHP files trigger server-side errors or Error 500 responses (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'Twig\\Extension\\AbstractExtension' not found in wp-content/plugins/wt-security/vendor/twig/twig/src/Extension/EscaperExtension.php:18
- > PHP Fatal error
Uncaught Error: Interface 'Twig\\Loader\\LoaderInterface' not found in wp-content/plugins/wt-security/vendor/twig/twig/src/Loader/FilesystemLoader.php:22
- > PHP Fatal error
Uncaught Error: Class 'Twig\ode\\Expression\\Binary\\AbstractBinary' not found in wp-content/plugins/wt-security/vendor/twig/twig/src/Node/Expression/Binary/SpaceshipBinary.php:16
- > PHP Fatal error
Uncaught Error: Class 'Twig\ode\\Expression\\Unary\\AbstractUnary' not found in wp-content/plugins/wt-security/vendor/twig/twig/src/Node/Expression/Unary/NegUnary.php:17
- > PHP Fatal error
Uncaught Error: Class 'Twig\\Sandbox\\SecurityError' not found in wp-content/plugins/wt-security/vendor/twig/twig/src/Sandbox/SecurityNotAllowedTagError.php:19
- > PHP Fatal error
Uncaught Error: Class 'Twig\ode\ode' not found in wp-content/plugins/wt-security/vendor/twig/twig/src/Node/WithNode.php:21
- > PHP Fatal error
Uncaught Error: Class 'Twig\\Extension\\AbstractExtension' not found in wp-content/plugins/wt-security/vendor/twig/twig/src/Extension/DebugExtension.php:15
- > PHP Fatal error
Uncaught Error: Class 'Twig\ode\\Expression\\AbstractExpression' not found in wp-content/plugins/wt-security/vendor/twig/twig/src/Node/Expression/ArrayExpression.php:16
- > PHP Fatal error
Uncaught Error: Class 'Twig\ode\\Expression\\Binary\\AbstractBinary' not found in wp-content/plugins/wt-security/vendor/twig/twig/src/Node/Expression/Binary/MulBinary.php:17
- > PHP Fatal error
Uncaught Error: Class 'Twig\\Extension\\AbstractExtension' not found in wp-content/plugins/wt-security/vendor/twig/twig/src/Extension/StringLoaderExtension.php:15
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
Everything seems fine on the user side
Optimizations
Plugin configuration 90% from 29 tests
readme.txt 94% from 16 tests
Perhaps the most important file in your plugin readme.txt gets parsed in order to generate the public listing of your plugin
Please fix the following attributes:
- Screenshots: Please a description for screenshot #5 in wt-security/assets to your readme.txt
wt-security/wt-security.php 85% from 13 tests
The entry point to "WebTotem Security" version 2.4.21 is a PHP file that has certain tags in its header comment area
You should first fix the following items:
- Text Domain: The text domain is optional since WordPress version 4.6; if you do specify it, it must be the same as the plugin slug
- Description: Please keep the plugin description shorter than 140 characters (currently 183 characters long)
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | This is an overview of file extensions present in this plugin and a short test that no dangerous files are bundled with this plugin
Success! There were no dangerous files found in this plugin70,715 lines of code in 379 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 219 | 4,559 | 6,922 | 22,328 |
JavaScript | 11 | 2,762 | 497 | 18,865 |
JSON | 8 | 0 | 0 | 15,985 |
CSS | 5 | 147 | 381 | 6,432 |
Twig | 54 | 606 | 17 | 4,417 |
PO File | 1 | 845 | 1,008 | 1,819 |
SVG | 77 | 0 | 0 | 697 |
YAML | 2 | 45 | 33 | 155 |
Markdown | 2 | 8 | 0 | 17 |
PHP code Passed 2 tests
This is a short overview of cyclomatic complexity and code structure for this plugin
No cyclomatic complexity issues were detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.46 |
Average class complexity | 13.24 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 223.00 |
Average method complexity | 3.17 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 68.00 |
Code structure | ||
---|---|---|
Namespaces | 26 | |
Interfaces | 11 | |
Traits | 0 | |
Classes | 189 | |
▷ Abstract classes | 11 | 5.82% |
▷ Concrete classes | 178 | 94.18% |
▷ Final classes | 57 | 32.02% |
Methods | 1,154 | |
▷ Static methods | 346 | 29.98% |
▷ Public methods | 1,011 | 87.61% |
▷ Protected methods | 52 | 4.51% |
▷ Private methods | 91 | 7.89% |
Functions | 187 | |
▷ Named functions | 171 | 91.44% |
▷ Anonymous functions | 16 | 8.56% |
Constants | 72 | |
▷ Global constants | 14 | 19.44% |
▷ Class constants | 58 | 80.56% |
▷ Public constants | 57 | 98.28% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
It is recommended to compress PNG files in your plugin to minimize bandwidth usage
1 compressed PNG file occupies 0.00MB
Potential savings
Compression of 1 random PNG file using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
includes/img/logo_17x17_w.png | 0.48KB | 0.54KB | 0.00% |