Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
Installer ran successfully
Server metrics [RAM: ▲0.07MB] [CPU: ▼3.86ms] Passed 4 tests
Server-side resources used by Database Analyzer
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.53 ▲0.06 | 37.29 ▼3.75 |
Dashboard /wp-admin | 3.37 ▲0.07 | 55.02 ▲7.72 |
Posts /wp-admin/edit.php | 3.49 ▲0.13 | 52.08 ▼3.19 |
Add New Post /wp-admin/post-new.php | 5.95 ▲0.07 | 101.87 ▼2.10 |
Media Library /wp-admin/upload.php | 3.30 ▲0.07 | 33.05 ▼6.40 |
Server storage [IO: ▲0.41MB] [DB: ▲0.00MB] Passed 3 tests
How much does this plugin use your filesystem and database?
No storage issues were detected
Filesystem: 39 new files
Database: no new tables, 6 new options
New WordPress options |
---|
widget_theysaidso_widget |
db_upgraded |
theysaidso_admin_options |
widget_recent-posts |
widget_recent-comments |
can_compress_scripts |
Browser metrics Passed 4 tests
An overview of browser requirements for Database Analyzer
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,801 ▲40 | 14.28 ▼0.01 | 1.69 ▲0.07 | 45.16 ▼2.41 |
Dashboard /wp-admin | 2,210 ▲30 | 5.63 ▼0.01 | 82.25 ▼6.53 | 40.65 ▲2.45 |
Posts /wp-admin/edit.php | 2,112 ▲12 | 2.01 ▲0.04 | 39.00 ▼2.24 | 37.28 ▲1.18 |
Add New Post /wp-admin/post-new.php | 1,538 ▲3 | 23.11 ▲4.89 | 613.69 ▼35.32 | 50.99 ▼38.43 |
Media Library /wp-admin/upload.php | 1,412 ▲9 | 4.24 ▼0.00 | 99.72 ▼6.00 | 41.88 ▼5.06 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
The following items require your attention
- This plugin does not fully uninstall, leaving 6 options in the database
- widget_recent-comments
- theysaidso_admin_options
- widget_theysaidso_widget
- can_compress_scripts
- db_upgraded
- widget_recent-posts
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
Even though no errors were found, this is by no means an exhaustive test
SRP 50% from 2 tests
🔹 Tests weight: 20 | It is important to ensure that your PHP files perform no action when accessed directly, respecting the single-responsibility principle
Please take a closer look at the following
- 3× PHP files trigger errors when accessed directly with GET requests:
- > PHP Fatal error
Trait 'JMasci\\HtmlTable\\T_Filters' not found in wp-content/plugins/database-analyzer/vendor/jmasci/html-table/src/Table.php on line 15
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit_Framework_TestCase' not found in wp-content/plugins/database-analyzer/vendor/jmasci/matrix-builder/tests/MatrixTest.php:7
- > PHP Fatal error
Uncaught Error: Interface 'JMasci\\ComponentTemplate\\I_Component' not found in wp-content/plugins/database-analyzer/vendor/jmasci/component-template/src/Component.php:9
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the browser (console and network errors and warnings)
No browser errors were detected
Optimizations
Plugin configuration 96% from 29 tests
readme.txt Passed 16 tests
Don't ignore readme.txt as it is the file that instructs WordPress.org on how to present your plugin to the world
4 plugin tags: reports, metrics, developer, database
database-analyzer/database-analyzer.php 92% from 13 tests
The primary PHP file in "Database Analyzer" version 1.0 is used by WordPress to initiate all plugin functionality
Please take the time to fix the following:
- Domain Path: The domain path points to a folder that does not exist ("/languages")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | There should be no dangerous file extensions present in any WordPress plugin
Success! There were no dangerous files found in this plugin2,434 lines of code in 50 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 29 | 691 | 1,141 | 1,857 |
Markdown | 6 | 101 | 0 | 289 |
JSON | 8 | 0 | 0 | 216 |
Sass | 3 | 11 | 1 | 41 |
CSS | 2 | 8 | 14 | 20 |
XML | 1 | 0 | 0 | 7 |
JavaScript | 1 | 0 | 3 | 4 |
PHP code Passed 2 tests
This plugin's cyclomatic complexity and code structure detailed below
No complexity issues detected
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.27 |
Average class complexity | 10.26 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 44.00 |
Average method complexity | 2.31 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 18.00 |
Code structure | ||
---|---|---|
Namespaces | 6 | |
Interfaces | 1 | |
Traits | 2 | |
Classes | 16 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 16 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 127 | |
▷ Static methods | 43 | 33.86% |
▷ Public methods | 123 | 96.85% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 4 | 3.15% |
Functions | 76 | |
▷ Named functions | 7 | 9.21% |
▷ Anonymous functions | 69 | 90.79% |
Constants | 13 | |
▷ Global constants | 2 | 15.38% |
▷ Class constants | 11 | 84.62% |
▷ Public constants | 11 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
Often times overlooked, PNG files can occupy unnecessary space in your plugin
No PNG files were detected