Testing is the means used in software development to reduce risks associated with a system.Risk-based testing (RBT) is a type of software testing that prioritizes the features and functions to be tested based on priority/importance and likelihood or impact of failure. In theory since there is an infinite number of possible tests any set of tests must be a subset of all possible tests. Test techniques such as boundary value analysis and state transition testing aim to find the areas most likely to be defective. So by using test techniques a software test engineer is already selecting tests based on risk.
Risk is calculated according to the features. All the functionalities are to be prioritized and those that are important are to be test first.