It sounds like you're facing one of two problems - either you're using a local dev chain and haven't deployed a Uniswap to it, or you're using a testing fork of a chain, and haven't told your test suite where to lookf for it. You probably have code in your tests for deploying the notSafeMoon contracts using something like const tokenArtifacts = await ethers....
An Ethereum account is a cryptographically secure random 256-bit integer, also known as a private key in public key cryptography.
Wallets are just a collection of accounts.
A good learning material inner working for Ethereum accounts is the source code of eth_account Python package.