Benchmarks
Plugin footprint 65% 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.52MB] [CPU: ▼309.54ms] Passed 4 tests
An overview of server-side resources used by 腾讯云点播 (VOD)
Normal server usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.95 ▲0.44 | 57.01 ▲5.14 |
Dashboard /wp-admin | 3.81 ▲0.40 | 34.67 ▲1.03 |
Posts /wp-admin/edit.php | 4.09 ▲0.45 | 41.21 ▲4.70 |
Add New Post /wp-admin/post-new.php | 3.59 ▼3.38 | 22.50 ▼1,246.52 |
Media Library /wp-admin/upload.php | 3.74 ▲0.45 | 26.21 ▲2.65 |
云点播 /wp-admin/admin.php?page=TencentCloudVodSettingPage | 3.75 | 26.06 |
腾讯云设置 /wp-admin/admin.php?page=TencentWordpressPluginsCommonSettingPage | 3.73 | 25.49 |
Server storage [IO: ▲10.12MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
This plugin was installed successfully
Filesystem: 2,099 new files
Database: 1 new table, 2 new options
New tables |
---|
wp_tencent_wordpress_options |
New WordPress options |
---|
tencent_wordpress_vod_options |
tencent_wordpress_common_options |
Browser metrics Passed 4 tests
Checking browser requirements for 腾讯云点播 (VOD)
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,832 ▲78 | 16.18 ▲0.52 | 6.33 ▲0.11 | 2.82 ▼0.64 |
Dashboard /wp-admin | 2,929 ▲75 | 6.14 ▼0.06 | 123.85 ▼6.60 | 180.37 ▲24.20 |
Posts /wp-admin/edit.php | 2,728 ▲34 | 3.24 ▲0.00 | 64.77 ▲1.09 | 149.40 ▲5.15 |
Add New Post /wp-admin/post-new.php | 1,685 ▲24 | 16.85 ▲0.54 | 408.65 ▼10.18 | 150.19 ▼5.01 |
Media Library /wp-admin/upload.php | 1,735 ▲34 | 5.57 ▲0.05 | 134.32 ▼2.18 | 201.77 ▲14.73 |
云点播 /wp-admin/admin.php?page=TencentCloudVodSettingPage | 1,315 | 2.55 | 58.95 | 355.88 |
腾讯云设置 /wp-admin/admin.php?page=TencentWordpressPluginsCommonSettingPage | 1,326 | 2.68 | 55.88 | 243.56 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
It is recommended to fix the following
- The plugin did not uninstall successfully, leaving 1 table in the database
- wp_tencent_wordpress_options
- Zombie WordPress options detected upon uninstall: 1 option
- tencent_wordpress_common_options
Smoke tests 50% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
The smoke test was a success, however most plugin functionality was not tested
SRP 0% 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
- 1× PHP files output text when accessed directly:
- > /wp-content/plugins/tencentcloud-vod/common/tencent-wordpress-plugins-setting-page.php
- 1832× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'Guzzle\\Common\\Exception\\RuntimeException' not found in wp-content/plugins/tencentcloud-vod/vendor/guzzle/guzzle/src/Guzzle/Service/Exception/InconsistentClientTransferException.php:10
- > PHP Warning
Use of undefined constant QCLOUDAPI_ROOT_PATH - assumed 'QCLOUDAPI_ROOT_PATH' (this will throw an Error in a future version of PHP) in wp-content/plugins/tencentcloud-vod/common/vendor/tencentcloud/tencentcloud-sdk-php/src/QcloudApi/Module/Eip.php on line 2
- > PHP Fatal error
Uncaught Error: Class 'TencentCloud\\Common\\AbstractModel' not found in wp-content/plugins/tencentcloud-vod/vendor/tencentcloud/vod/src/TencentCloud/Vod/V20180717/Models/AiAnalysisTaskClassificationOutput.php:26
- > PHP Fatal error
Uncaught Error: Class 'Guzzle\\Tests\\GuzzleTestCase' not found in wp-content/plugins/tencentcloud-vod/vendor/guzzle/guzzle/tests/Guzzle/Tests/Common/EventTest.php:10
- > PHP Warning
require_once(QCLOUDAPI_ROOT_PATH/Module/Base.php): failed to open stream: No such file or directory in wp-content/plugins/tencentcloud-vod/vendor/tencentcloud/tencentcloud-sdk-php/src/QcloudApi/Module/Market.php on line 2
- > PHP Fatal error
Uncaught Error: Class 'TencentCloud\\Common\\AbstractModel' not found in wp-content/plugins/tencentcloud-vod/common/vendor/tencentcloud/tencentcloud-sdk-php/src/TencentCloud/Ms/V20180408/Models/ShieldInfo.php:38
- > PHP Fatal error
Uncaught Error: Class 'TencentCloud\\Common\\AbstractModel' not found in wp-content/plugins/tencentcloud-vod/vendor/tencentcloud/vod/src/TencentCloud/Vod/V20180717/Models/CreateAnimatedGraphicsTemplateResponse.php:28
- > PHP Fatal error
Uncaught Error: Class 'TencentCloud\\Common\\AbstractModel' not found in wp-content/plugins/tencentcloud-vod/vendor/tencentcloud/tencentcloud-sdk-php/src/TencentCloud/Vod/V20180717/Models/AiAnalysisTaskCoverOutput.php:28
- > PHP Fatal error
Uncaught Error: Class 'Guzzle\\Tests\\GuzzleTestCase' not found in wp-content/plugins/tencentcloud-vod/vendor/guzzle/guzzle/tests/Guzzle/Tests/Plugin/Md5/CommandContentMd5PluginTest.php:13
- > PHP Fatal error
Uncaught Error: Class 'Guzzle\\Tests\\GuzzleTestCase' not found in wp-content/plugins/tencentcloud-vod/vendor/guzzle/guzzle/tests/Guzzle/Tests/Stream/StreamTest.php:11
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no browser errors were triggered
No browser errors were detected
Optimizations
Plugin configuration 93% from 29 tests
readme.txt 94% from 16 tests
Often overlooked, readme.txt is one of the most important files in your plugin
Please fix the following attributes:
- Screenshots: A description for screenshot #1 is missing in tencentcloud-vod/assets to your readme.txt
tencentcloud-vod/tencentcloud-vod.php 92% from 13 tests
The main file in "腾讯云点播 (VOD)" v. 1.0.3 serves as a complement to information provided in readme.txt and as the entry point to the plugin
Please make the necessary changes and fix the following:
- Description: The description should be shorter than 140 characters (currently 207 characters long)
Code Analysis 97% from 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
Everything looks great! No dangerous files found in this plugin126,523 lines of code in 1,898 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 1,759 | 21,113 | 84,930 | 111,612 |
Markdown | 27 | 2,033 | 0 | 6,921 |
JSON | 57 | 15 | 0 | 3,067 |
CSS | 5 | 323 | 29 | 2,267 |
reStructuredText | 30 | 1,236 | 1,794 | 1,824 |
JavaScript | 5 | 23 | 101 | 255 |
XML | 6 | 29 | 11 | 236 |
make | 2 | 28 | 5 | 133 |
HTML | 2 | 16 | 0 | 95 |
Python | 1 | 22 | 23 | 49 |
Ant | 1 | 10 | 1 | 34 |
YAML | 2 | 3 | 0 | 20 |
Dockerfile | 1 | 8 | 0 | 10 |
PHP code 50% from 2 tests
Analyzing cyclomatic complexity and code structure
It is recommended to fix the following
- Please reduce cyclomatic complexity of methods to less than 100 (currently 179)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.47 |
Average class complexity | 9.29 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 179.00 |
Average method complexity | 3.19 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 179.00 |
Code structure | ||
---|---|---|
Namespaces | 126 | |
Interfaces | 96 | |
Traits | 6 | |
Classes | 1,735 | |
▷ Abstract classes | 27 | 1.56% |
▷ Concrete classes | 1,708 | 98.44% |
▷ Final classes | 38 | 2.22% |
Methods | 7,395 | |
▷ Static methods | 446 | 6.03% |
▷ Public methods | 6,744 | 91.20% |
▷ Protected methods | 233 | 3.15% |
▷ Private methods | 418 | 5.65% |
Functions | 585 | |
▷ Named functions | 185 | 31.62% |
▷ Anonymous functions | 400 | 68.38% |
Constants | 510 | |
▷ Global constants | 96 | 18.82% |
▷ Class constants | 414 | 81.18% |
▷ Public constants | 414 | 100.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
2 PNG files occupy 0.24MB with 0.08MB in potential savings
Potential savings
Compression of 2 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
vendor/guzzle/guzzle/docs/_static/guzzle-icon.png | 0.78KB | 0.94KB | 0.00% |
vendor/guzzle/guzzle/docs/_static/logo.png | 241.87KB | 69.68KB | ▼ 71.19% |