A method of detecting a copy number variation comprising following steps: obtaining reads from at least one part of a nucleic acid molecule of a sample, determining uniquely-mapped reads aligned to a genomic reference sequence based on the obtained reads, dividing the genomic reference sequence into a plurality of windows, and calculating the number of uniquely-mapped reads falling into each of the plurality of windows, subjecting the number of uniquely-mapped reads falling into each of the plurality of windows to a GC correction, and to a correction based on the expected number of uniquely-mapped reads corrected by a control set to obtain the corrected number of uniquely-mapped reads, calculating a significance of value population consisting of the corrected number of uniquely-mapped reads between two sides of a demarcation point, with the demarcation point being selected as a starting point or a terminal point of each of the plurality of windows, to select the demarcation point having a smaller value of the significance as a candidate of a CNV breakpoint; calculating a significance of two value populations consisting of the corrected number of uniquely-mapped reads respectively contained in two sequences, with one sequence ranging from each of the CNV breakpoint to an adjacent upstream CNV breakpoint, and the other sequence ranging from each of the CNV breakpoint to an adjacent downstream CNV breakpoint, and removing the candidate of the CNV breakpoint having the least significance for each time and recalculating the significance of two candidates of the CNV breakpoint adjacent to the removed candidate of the CNV breakpoint, cycling and iterating until the significances of all candidates of the CNV breakpoint are less than a final cut-off, to determine the CNV breakpoint. obtaining reads from at least one part of a nucleic acid molecule of a sample, determining uniquely-mapped reads aligned to a genomic reference sequence based on the obtained reads, dividing the genomic reference sequence into a plurality of windows, and calculating the number of uniquely-mapped reads falling into each of the plurality of windows, subjecting the number of uniquely-mapped reads falling into each of the plurality of windows to a GC correction, and to a correction based on the expected number of uniquely-mapped reads corrected by a control set to obtain the corrected number of uniquely-mapped reads, calculating a significance of value population consisting of the corrected number of uniquely-mapped reads between two sides of a demarcation point, with the demarcation point being selected as a starting point or a terminal point of each of the plurality of windows, to select the demarcation point having a smaller value of the significance as a candidate of a CNV breakpoint; calculating a significance of two value populations consisting of the corrected number of uniquely-mapped reads respectively contained in two sequences, with one sequence ranging from each of the CNV breakpoint to an adjacent upstream CNV breakpoint, and the other sequence ranging from each of the CNV breakpoint to an adjacent downstream CNV breakpoint, and removing the candidate of the CNV breakpoint having the least significance for each time and recalculating the significance of two candidates of the CNV breakpoint adjacent to the removed candidate of the CNV breakpoint, cycling and iterating until the significances of all candidates of the CNV breakpoint are less than a final cut-off, to determine the CNV breakpoint.