But I haven't tried running the testnet node.
It is important to know, that there are more networks than mainnet. You can currently pick from mainnet, testnet3, regtest and signet in the current version of Bitcoin Core.
I haven't found a single Tutorial video on YouTube about it.
If you can run Bitcoin Core from console window, then you know everything you need. Just use a different flag, when starting the client:
./bitcoin-qt --help
...
Chain selection options:
-chain=
Use the chain (default: main). Allowed values: main, test,
signet, regtest
-signet
Use the signet chain. Equivalent to -chain=signet. Note that the network
is defined by the -signetchallenge parameter
-signetchallenge
Blocks must satisfy the given script to be considered valid (only for
signet networks; defaults to the global default signet test
network challenge)
-signetseednode
Specify a seed node for the signet network, in the hostname[:port]
format, e.g. sig.net:1234 (may be used multiple times to specify
multiple seed nodes; defaults to the global default signet test
network seed node(s))
-testnet
Use the test chain. Equivalent to -chain=test.
...
And then, I usually start all of those networks offline, and remove "noconnect" option, when I have to go online:
./bitcoin-qt --noconnect # starting the mainnet in offline mode
./bitcoin-qt --noconnect -testnet # offline testnet3
./bitcoin-qt -regtest # this network is offline by default
./bitcoin-qt --noconnect -signet # blocks are signed there
Currently, I am downloading the whole testnet chain, and I don't know how long it will take.
Pick the best network for your goals. You don't have to stick with testnet3. If you just want to mine some blocks on CPU, and you want to do that offline, then just pick regtest, and don't worry about Initial Blockchain Download.
And if you want to make it online, then you can use signet, and pick your own signetchallenge. For example, you can use "
OP_DUP OP_NOTIF OP_ENDIF", then you can synchronize existing signet, and mine your own blocks on top of that (or you can just pick OP_TRUE, if you want to use signet in the same way as testnet3).
Now, if you ask me about the purposes, I am not a dev, (I don't have coding knowledge) but I do some freelance work. Sometimes, clients ask to test their projects in addition to my work. Moreover, Having some testnet coins is better for the future as well. I may help others when they need it.
As I said, if you need some online, private test network, then you should probably use signet, with your own signetchallenge. And to make things easy, you can change existing 1-of-2 multisig, into for example 1-of-3 multisig, and add your own public key, as the third key. This is also sufficient to synchronize official signet chain.