You have a speed issue which you tried to diagnose with a hard drive self-test that failed. Your question was related only to the failed test. This answer will adress both subjects.
1. speed issue
a) shingled magnetic recording
The hard drive in your laptop is the model WDC WD10SPZX-60Z 1TB.
This drive is a using shingled magnetic recording. Tracks are overlapping and write operations on this drive require additional write operations to repair that shingled structure.
I would only use such drives for backup purposes where the drive gets filled in a linear manner. The requirement of additional write operations is equal to being slow compared to a regular using CMR (conventional magnetic recording). Western Digital lost a class action suit for not disclosing that information with their drives. Furthermore I suspect that a power loss could leave such a drive in a logically broken state which is less the case with a laptop and its buffering battery.
When accessing a fragmented volume or partition your average transfer speed may very well drop to 20 MByte/sec. You would need to defragment your drive to exclude this explanation or better put your data on a separate partition that will not be fragmented by the activity of your operating system - only by your individual delete and rewrite operation of files on this additional partition.
2. failed hard drive self-test
Instead of running different self-tests of a hardware that only provide you with a binary result type like "failed" or "ok" the easiest and less time-consuming way is to read out the self-diagnosing information of a drive, the so-called "SMART" values.
Various programs are available like "CrystaldiskInfo" or smartmontools to read out the SMART values.
"CrystaldiskInfo" is easier to use because it gets by easily with externally connected devices over USB, but its text output is less user friendly because it contains hex raw values and lists all drive. Furthermore it shows much more information than really needed.
"Smartmontools" is my preferred choice because it lists the SMART parameters only for the drive you selected showing decimal raw values. Disadvantage is that you might use an additional parameter "-d sat" or its variations to comply with different type of USB bridges when examining an externally connected drive.
You run smartmoontols from a command line. In Windows go to the smartmoontools folder where smartctl reside in and type "cmd" to have a command prompt from there within. The command
smartctl -a /dev/sdX > c:\mylog.txt
would redirect all information about drive X into the file mylog.txt on C:.
is a drive designation arisen from the unixoid world where your drives get assigned letters A,B,C,D etc... as opposed to the windows world where your drive gets numbered within "Disk management".
When facing an error message it might be necessary to add the -d parameter like
smartctl -a -d sat /dev/sdX > c:\mylog.txt
Different bridges might require other parameters, the "-d sat" is the most common for external drives.
In mixed environment that includes IDE drives the drive name might be
"/dev/hdX" (hd= hard drive as opposed to sd=serial drive)
This log files gives detailed health information about your drive. Please create the file and post it here.