tests: Reorder longer running tests in test_runner

The logest running tests should be at the front of the list in
test_runner.py. Since compiling with --enable-debug can have a
significant effect on test runtime, the order is based on the runtime
with that option configured.
This commit is contained in:
Andrew Chow 2022-12-06 23:04:40 -05:00
parent ff6c9fe027
commit 1647a11f39

View File

@ -90,56 +90,81 @@ EXTENDED_SCRIPTS = [
BASE_SCRIPTS = [ BASE_SCRIPTS = [
# Scripts that are run by default. # Scripts that are run by default.
# Longest test should go first, to favor running tests in parallel # Longest test should go first, to favor running tests in parallel
'wallet_hd.py --legacy-wallet',
'wallet_hd.py --descriptors',
'wallet_backup.py --legacy-wallet',
'wallet_backup.py --descriptors',
# vv Tests less than 5m vv # vv Tests less than 5m vv
'mining_getblocktemplate_longpoll.py', 'feature_fee_estimation.py',
'feature_maxuploadtarget.py', 'feature_taproot.py',
'feature_block.py', 'feature_block.py',
# vv Tests less than 2m vv
'mining_getblocktemplate_longpoll.py',
'p2p_segwit.py',
'feature_maxuploadtarget.py',
'mempool_updatefromblock.py',
'mempool_persist.py --descriptors',
# vv Tests less than 60s vv
'rpc_psbt.py --legacy-wallet',
'rpc_psbt.py --descriptors',
'wallet_fundrawtransaction.py --legacy-wallet', 'wallet_fundrawtransaction.py --legacy-wallet',
'wallet_fundrawtransaction.py --descriptors', 'wallet_fundrawtransaction.py --descriptors',
'p2p_compactblocks.py', 'wallet_bumpfee.py --legacy-wallet',
'p2p_compactblocks_blocksonly.py', 'wallet_bumpfee.py --descriptors',
'wallet_import_rescan.py --legacy-wallet',
'wallet_backup.py --legacy-wallet',
'wallet_backup.py --descriptors',
'feature_segwit.py --legacy-wallet', 'feature_segwit.py --legacy-wallet',
'feature_segwit.py --descriptors', 'feature_segwit.py --descriptors',
# vv Tests less than 2m vv 'p2p_tx_download.py',
'wallet_avoidreuse.py --legacy-wallet',
'wallet_avoidreuse.py --descriptors',
'feature_abortnode.py',
'wallet_address_types.py --legacy-wallet',
'wallet_address_types.py --descriptors',
'wallet_basic.py --legacy-wallet', 'wallet_basic.py --legacy-wallet',
'wallet_basic.py --descriptors', 'wallet_basic.py --descriptors',
'wallet_labels.py --legacy-wallet', 'feature_maxtipage.py',
'wallet_labels.py --descriptors', 'wallet_multiwallet.py --legacy-wallet',
'p2p_segwit.py', 'wallet_multiwallet.py --descriptors',
'wallet_multiwallet.py --usecli',
'p2p_dns_seeds.py',
'wallet_groups.py --legacy-wallet',
'wallet_groups.py --descriptors',
'p2p_blockfilters.py',
'feature_assumevalid.py',
'wallet_taproot.py --descriptors',
'feature_bip68_sequence.py',
'rpc_packages.py',
'rpc_bind.py --ipv4',
'rpc_bind.py --ipv6',
'rpc_bind.py --nonloopback',
'p2p_headers_sync_with_minchainwork.py',
'p2p_feefilter.py',
'feature_csv_activation.py',
'p2p_sendheaders.py',
'wallet_listtransactions.py --legacy-wallet',
'wallet_listtransactions.py --descriptors',
# vv Tests less than 30s vv
'p2p_invalid_messages.py',
'rpc_createmultisig.py',
'p2p_timeouts.py', 'p2p_timeouts.py',
'p2p_tx_download.py',
'mempool_updatefromblock.py',
'wallet_dump.py --legacy-wallet', 'wallet_dump.py --legacy-wallet',
'feature_taproot.py',
'rpc_signer.py', 'rpc_signer.py',
'wallet_signer.py --descriptors', 'wallet_signer.py --descriptors',
# vv Tests less than 60s vv
'p2p_sendheaders.py',
'wallet_importmulti.py --legacy-wallet', 'wallet_importmulti.py --legacy-wallet',
'mempool_limit.py', 'mempool_limit.py',
'rpc_txoutproof.py', 'rpc_txoutproof.py',
'wallet_listreceivedby.py --legacy-wallet', 'wallet_listreceivedby.py --legacy-wallet',
'wallet_listreceivedby.py --descriptors', 'wallet_listreceivedby.py --descriptors',
'wallet_abandonconflict.py --legacy-wallet', 'wallet_abandonconflict.py --legacy-wallet',
'p2p_dns_seeds.py',
'wallet_abandonconflict.py --descriptors', 'wallet_abandonconflict.py --descriptors',
'feature_csv_activation.py',
'wallet_address_types.py --legacy-wallet',
'wallet_address_types.py --descriptors',
'feature_bip68_sequence.py',
'p2p_feefilter.py',
'rpc_packages.py',
'feature_reindex.py', 'feature_reindex.py',
'feature_abortnode.py', 'wallet_labels.py --legacy-wallet',
# vv Tests less than 30s vv 'wallet_labels.py --descriptors',
'p2p_compactblocks.py',
'p2p_compactblocks_blocksonly.py',
'wallet_hd.py --legacy-wallet',
'wallet_hd.py --descriptors',
'wallet_keypool_topup.py --legacy-wallet', 'wallet_keypool_topup.py --legacy-wallet',
'wallet_keypool_topup.py --descriptors', 'wallet_keypool_topup.py --descriptors',
'wallet_fast_rescan.py --descriptors', 'wallet_fast_rescan.py --descriptors',
'feature_fee_estimation.py',
'interface_zmq.py', 'interface_zmq.py',
'rpc_invalid_address_message.py', 'rpc_invalid_address_message.py',
'interface_bitcoin_cli.py --legacy-wallet', 'interface_bitcoin_cli.py --legacy-wallet',
@ -157,20 +182,12 @@ BASE_SCRIPTS = [
'rpc_misc.py', 'rpc_misc.py',
'interface_rest.py', 'interface_rest.py',
'mempool_spend_coinbase.py', 'mempool_spend_coinbase.py',
'wallet_avoidreuse.py --legacy-wallet',
'wallet_avoidreuse.py --descriptors',
'wallet_avoid_mixing_output_types.py --descriptors', 'wallet_avoid_mixing_output_types.py --descriptors',
'mempool_reorg.py', 'mempool_reorg.py',
'mempool_persist.py --descriptors',
'p2p_block_sync.py', 'p2p_block_sync.py',
'wallet_multiwallet.py --legacy-wallet',
'wallet_multiwallet.py --descriptors',
'wallet_multiwallet.py --usecli',
'wallet_createwallet.py --legacy-wallet', 'wallet_createwallet.py --legacy-wallet',
'wallet_createwallet.py --usecli', 'wallet_createwallet.py --usecli',
'wallet_createwallet.py --descriptors', 'wallet_createwallet.py --descriptors',
'wallet_listtransactions.py --legacy-wallet',
'wallet_listtransactions.py --descriptors',
'wallet_watchonly.py --legacy-wallet', 'wallet_watchonly.py --legacy-wallet',
'wallet_watchonly.py --usecli --legacy-wallet', 'wallet_watchonly.py --usecli --legacy-wallet',
'wallet_reorgsrestore.py', 'wallet_reorgsrestore.py',
@ -180,8 +197,6 @@ BASE_SCRIPTS = [
'interface_usdt_net.py', 'interface_usdt_net.py',
'interface_usdt_utxocache.py', 'interface_usdt_utxocache.py',
'interface_usdt_validation.py', 'interface_usdt_validation.py',
'rpc_psbt.py --legacy-wallet',
'rpc_psbt.py --descriptors',
'rpc_users.py', 'rpc_users.py',
'rpc_whitelist.py', 'rpc_whitelist.py',
'feature_proxy.py', 'feature_proxy.py',
@ -189,13 +204,10 @@ BASE_SCRIPTS = [
'wallet_signrawtransactionwithwallet.py --legacy-wallet', 'wallet_signrawtransactionwithwallet.py --legacy-wallet',
'wallet_signrawtransactionwithwallet.py --descriptors', 'wallet_signrawtransactionwithwallet.py --descriptors',
'rpc_signrawtransactionwithkey.py', 'rpc_signrawtransactionwithkey.py',
'p2p_headers_sync_with_minchainwork.py',
'rpc_rawtransaction.py --legacy-wallet', 'rpc_rawtransaction.py --legacy-wallet',
'wallet_groups.py --legacy-wallet',
'wallet_transactiontime_rescan.py --descriptors', 'wallet_transactiontime_rescan.py --descriptors',
'wallet_transactiontime_rescan.py --legacy-wallet', 'wallet_transactiontime_rescan.py --legacy-wallet',
'p2p_addrv2_relay.py', 'p2p_addrv2_relay.py',
'wallet_groups.py --descriptors',
'p2p_compactblocks_hb.py', 'p2p_compactblocks_hb.py',
'p2p_disconnect_ban.py', 'p2p_disconnect_ban.py',
'rpc_decodescript.py', 'rpc_decodescript.py',
@ -211,7 +223,6 @@ BASE_SCRIPTS = [
'wallet_keypool.py --descriptors', 'wallet_keypool.py --descriptors',
'wallet_descriptor.py --descriptors', 'wallet_descriptor.py --descriptors',
'wallet_miniscript.py --descriptors', 'wallet_miniscript.py --descriptors',
'feature_maxtipage.py',
'p2p_nobloomfilter_messages.py', 'p2p_nobloomfilter_messages.py',
'p2p_filter.py', 'p2p_filter.py',
'rpc_setban.py', 'rpc_setban.py',
@ -219,9 +230,7 @@ BASE_SCRIPTS = [
'mining_prioritisetransaction.py', 'mining_prioritisetransaction.py',
'p2p_invalid_locator.py', 'p2p_invalid_locator.py',
'p2p_invalid_block.py', 'p2p_invalid_block.py',
'p2p_invalid_messages.py',
'p2p_invalid_tx.py', 'p2p_invalid_tx.py',
'feature_assumevalid.py',
'example_test.py', 'example_test.py',
'wallet_txn_doublespend.py --legacy-wallet', 'wallet_txn_doublespend.py --legacy-wallet',
'wallet_multisig_descriptor_psbt.py --descriptors', 'wallet_multisig_descriptor_psbt.py --descriptors',
@ -237,7 +246,6 @@ BASE_SCRIPTS = [
'feature_rbf.py', 'feature_rbf.py',
'mempool_packages.py', 'mempool_packages.py',
'mempool_package_onemore.py', 'mempool_package_onemore.py',
'rpc_createmultisig.py',
'mempool_package_limits.py', 'mempool_package_limits.py',
'feature_versionbits_warning.py', 'feature_versionbits_warning.py',
'rpc_preciousblock.py', 'rpc_preciousblock.py',
@ -254,18 +262,12 @@ BASE_SCRIPTS = [
'feature_nulldummy.py', 'feature_nulldummy.py',
'mempool_accept.py', 'mempool_accept.py',
'mempool_expiry.py', 'mempool_expiry.py',
'wallet_import_rescan.py --legacy-wallet',
'wallet_import_with_label.py --legacy-wallet', 'wallet_import_with_label.py --legacy-wallet',
'wallet_importdescriptors.py --descriptors', 'wallet_importdescriptors.py --descriptors',
'wallet_upgradewallet.py --legacy-wallet', 'wallet_upgradewallet.py --legacy-wallet',
'rpc_bind.py --ipv4',
'rpc_bind.py --ipv6',
'rpc_bind.py --nonloopback',
'wallet_crosschain.py', 'wallet_crosschain.py',
'mining_basic.py', 'mining_basic.py',
'feature_signet.py', 'feature_signet.py',
'wallet_bumpfee.py --legacy-wallet',
'wallet_bumpfee.py --descriptors',
'wallet_implicitsegwit.py --legacy-wallet', 'wallet_implicitsegwit.py --legacy-wallet',
'rpc_named_arguments.py', 'rpc_named_arguments.py',
'feature_startupnotify.py', 'feature_startupnotify.py',
@ -296,7 +298,6 @@ BASE_SCRIPTS = [
'wallet_sendall.py --legacy-wallet', 'wallet_sendall.py --legacy-wallet',
'wallet_sendall.py --descriptors', 'wallet_sendall.py --descriptors',
'wallet_create_tx.py --descriptors', 'wallet_create_tx.py --descriptors',
'wallet_taproot.py --descriptors',
'wallet_inactive_hdchains.py --legacy-wallet', 'wallet_inactive_hdchains.py --legacy-wallet',
'p2p_fingerprint.py', 'p2p_fingerprint.py',
'feature_uacomment.py', 'feature_uacomment.py',
@ -309,7 +310,6 @@ BASE_SCRIPTS = [
'p2p_add_connections.py', 'p2p_add_connections.py',
'feature_bind_port_discover.py', 'feature_bind_port_discover.py',
'p2p_unrequested_blocks.py', 'p2p_unrequested_blocks.py',
'p2p_blockfilters.py',
'p2p_message_capture.py', 'p2p_message_capture.py',
'feature_includeconf.py', 'feature_includeconf.py',
'feature_addrman.py', 'feature_addrman.py',