Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲2.97MB] [CPU: ▼156.44ms] Passed 4 tests
This is a short check of server-side resources used by MoceanAPI Order SMS Notification for WooCommerce
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 5.78 ▲2.94 | 55.47 ▲27.74 |
Dashboard /wp-admin | 6.10 ▲3.04 | 1,425.26 ▲1,382.15 |
Posts /wp-admin/edit.php | 6.15 ▲3.04 | 60.12 ▲25.65 |
Add New Post /wp-admin/post-new.php | 8.37 ▲2.93 | 87.90 ▼693.52 |
Media Library /wp-admin/upload.php | 5.96 ▲2.96 | 38.79 ▲14.38 |
MoceanAPI SMS Settings /wp-admin/options-general.php?page=moceansms-woocoommerce-setting | 5.96 | 44.58 |
Scheduled Actions /wp-admin/tools.php?page=action-scheduler | 6.15 | 59.26 |
/wp-admin/admin.php?page=moceansms-download-file | 5.93 | 41.91 |
Server storage [IO: ▲2.33MB] [DB: ▲0.01MB] Passed 3 tests
Input-output and database impact of this plugin
No storage issues were detected
Filesystem: 216 new files
Database: 5 new tables, 4 new options
New tables |
---|
moceansms_wc_send_sms_outbox |
wp_actionscheduler_logs |
wp_actionscheduler_groups |
wp_actionscheduler_claims |
wp_actionscheduler_actions |
New WordPress options |
---|
action_scheduler_lock_async-request-runner |
schema-ActionScheduler_StoreSchema |
action_scheduler_hybrid_store_demarkation |
schema-ActionScheduler_LoggerSchema |
Browser metrics Passed 4 tests
MoceanAPI Order SMS Notification for WooCommerce: an overview of browser usage
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,965 ▲364 | 17.73 ▲1.78 | 5.77 ▲0.57 | 96.38 ▲24.74 |
Dashboard /wp-admin | 3,232 ▲340 | 8.44 ▲2.12 | 139.30 ▲5.14 | 175.76 ▲4.30 |
Posts /wp-admin/edit.php | 3,017 ▲280 | 5.43 ▲2.21 | 80.82 ▲16.36 | 135.82 ▼3.37 |
Add New Post /wp-admin/post-new.php | 1,709 ▼1,997 | 18.59 ▼0.07 | 348.02 ▼105.03 | 158.67 ▼10.28 |
Media Library /wp-admin/upload.php | 1,800 ▲48 | 5.90 ▲0.43 | 129.34 ▼9.69 | 197.92 ▲11.33 |
MoceanAPI SMS Settings /wp-admin/options-general.php?page=moceansms-woocoommerce-setting | 1,320 | 4.82 | 76.67 | 99.32 |
Scheduled Actions /wp-admin/tools.php?page=action-scheduler | 1,898 | 5.23 | 72.75 | 113.67 |
/wp-admin/admin.php?page=moceansms-download-file | 864 | 2.33 | 39.30 | 53.21 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.01MB] 50% from 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
Please fix the following items
- Zombie tables detected upon uninstall: 5 tables
- moceansms_wc_send_sms_outbox
- wp_actionscheduler_actions
- wp_actionscheduler_logs
- wp_actionscheduler_claims
- wp_actionscheduler_groups
- Zombie WordPress options detected upon uninstall: 4 options
- action_scheduler_hybrid_store_demarkation
- action_scheduler_lock_async-request-runner
- schema-ActionScheduler_LoggerSchema
- schema-ActionScheduler_StoreSchema
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no server-side errors were triggered
Everything seems fine, however this is by no means an exhaustive test
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
Almost there! Just fix the following items
- 109× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'WP_CLI_Command' not found in wp-content/plugins/moceansms-order-sms-notification-for-woocommerce/lib/action-scheduler/classes/WP_CLI/Migration_Command.php:22
- > PHP Fatal error
Uncaught Error: Class 'ActionScheduler_UnitTestCase' not found in wp-content/plugins/moceansms-order-sms-notification-for-woocommerce/lib/action-scheduler/tests/phpunit/lock/ActionScheduler_OptionLock_Test.php:7
- > PHP Fatal error
Uncaught Error: Class 'CronExpression_AbstractField' not found in wp-content/plugins/moceansms-order-sms-notification-for-woocommerce/lib/action-scheduler/lib/cron-expression/CronExpression_DayOfMonthField.php:21
- > PHP Fatal error
Uncaught Error: Class 'ActionScheduler_DBStore' not found in wp-content/plugins/moceansms-order-sms-notification-for-woocommerce/lib/action-scheduler/classes/migration/ActionScheduler_DBStoreMigrator.php:10
- > PHP Fatal error
Uncaught Error: Class 'ActionScheduler_UnitTestCase' not found in wp-content/plugins/moceansms-order-sms-notification-for-woocommerce/lib/action-scheduler/tests/phpunit/schedules/ActionScheduler_SimpleSchedule_Test.php:7
- > PHP Fatal error
Uncaught Error: Interface 'Moceansms_Register_Interface' not found in wp-content/plugins/moceansms-order-sms-notification-for-woocommerce/includes/class-moceansms-download-log.php:9
- > PHP Fatal error
Uncaught Error: Class 'ActionScheduler_Abstract_Schedule' not found in wp-content/plugins/moceansms-order-sms-notification-for-woocommerce/lib/action-scheduler/classes/abstracts/ActionScheduler_Abstract_RecurringSchedule.php:6
- > PHP Fatal error
Uncaught Error: Interface 'Moceansms_PluginInterface' not found in wp-content/plugins/moceansms-order-sms-notification-for-woocommerce/includes/plugins/MoceanBookIt.php:3
- > PHP Fatal error
Uncaught Error: Interface 'Moceansms_PluginInterface' not found in wp-content/plugins/moceansms-order-sms-notification-for-woocommerce/includes/plugins/MoceanLatePoint.php:3
- > PHP Fatal error
Uncaught Error: Interface 'Moceansms_PluginInterface' not found in wp-content/plugins/moceansms-order-sms-notification-for-woocommerce/includes/plugins/MoceanWpERP.php:3
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
No browser errors were detected
Optimizations
Plugin configuration 90% from 29 tests
readme.txt 94% from 16 tests
The readme.txt file is undoubtedly the most important file in your plugin, preparing it for public listing on WordPress.org
These attributes need to be fixed:
- Screenshots: These screenshots lack descriptions #10, #11, #12, #13, #14, #15, #16, #17, #5, #6, #7, #8, #9 in moceansms-order-sms-notification-for-woocommerce/assets to your readme.txt
moceansms-order-sms-notification-for-woocommerce/moceansms-woocommerce.php 85% from 13 tests
The main file in "MoceanAPI Order SMS Notification for WooCommerce" v. 1.3.11 serves as a complement to information provided in readme.txt and as the entry point to the plugin
The following require your attention:
- Main file name: Please rename the main PHP file in this plugin to the plugin slug ("moceansms-order-sms-notification-for-woocommerce.php" instead of "moceansms-woocommerce.php")
- 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
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short glimpse at programming languages used with this plugin and a check that no dangerous files are present
There were no executable files found in this plugin31,851 lines of code in 196 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 165 | 3,787 | 5,832 | 17,953 |
CSS | 1 | 1 | 27 | 9,102 |
JSON | 4 | 0 | 0 | 3,401 |
Markdown | 11 | 364 | 0 | 630 |
JavaScript | 3 | 54 | 36 | 277 |
Bourne Shell | 1 | 23 | 11 | 147 |
YAML | 4 | 15 | 6 | 111 |
XML | 3 | 8 | 3 | 91 |
HTML | 2 | 8 | 0 | 52 |
Sass | 1 | 10 | 0 | 47 |
SVG | 1 | 0 | 0 | 40 |
PHP code Passed 2 tests
Analyzing logical lines of code, cyclomatic complexity, and other code metrics
All good! No complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.23 |
Average class complexity | 11.08 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 88.00 |
Average method complexity | 2.28 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 29.00 |
Code structure | ||
---|---|---|
Namespaces | 3 | |
Interfaces | 7 | |
Traits | 0 | |
Classes | 152 | |
▷ Abstract classes | 18 | 11.84% |
▷ Concrete classes | 134 | 88.16% |
▷ Final classes | 0 | 0.00% |
Methods | 1,307 | |
▷ Static methods | 92 | 7.04% |
▷ Public methods | 1,014 | 77.58% |
▷ Protected methods | 170 | 13.01% |
▷ Private methods | 123 | 9.41% |
Functions | 45 | |
▷ Named functions | 23 | 51.11% |
▷ Anonymous functions | 22 | 48.89% |
Constants | 40 | |
▷ Global constants | 7 | 17.50% |
▷ Class constants | 33 | 82.50% |
▷ Public constants | 33 | 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
6 PNG files occupy 0.02MB with 0.01MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
lib/action-scheduler/docs/android-chrome-192x192.png | 6.77KB | 2.46KB | ▼ 63.68% |
lib/action-scheduler/docs/android-chrome-256x256.png | 2.93KB | 3.03KB | 0.00% |
lib/action-scheduler/docs/apple-touch-icon.png | 6.77KB | 2.46KB | ▼ 63.68% |
lib/action-scheduler/docs/mstile-150x150.png | 4.15KB | 3.67KB | ▼ 11.47% |
lib/action-scheduler/docs/favicon-16x16.png | 0.39KB | 0.38KB | ▼ 3.02% |