In[]:=
ClearAll["Global`*"]​​(**testdata**)​​nn=3;​​data=Flatten[Table[{x1,x2,x3,x4,x5,x6,x7,1.2x1-3.4x2+10.7x3+4.9x4-8.3x5+7.5x6+1.5x7+RandomReal[10]},{x1,RandomReal[10,nn]},{x2,RandomReal[10,nn]},{x3,RandomReal[10,nn]},{x4,RandomReal[10,nn]},{x5,RandomReal[10,nn]},{x6,RandomReal[10,nn]},{x7,RandomReal[10,nn]}],6];​​(**Endtestdata**)​​(**Fitamodel=lm1**)​​lm1=LinearModelFit[data,{x1,x2,x3,x4,x5,x6,x7},{x1,x2,x3,x4,x5,x6,x7}]​​(**Fitthesquarederrorstoamodelwiththesamepredictors=lm2**)​​​​lm2=LinearModelFit[Block[{newdata=data},newdata[[All,-1]]=lm1["FitResiduals"]^2;newdata],{x1,x2,x3,x4,x5,x6,x7},{x1,x2,x3,x4,x5,x6,x7}];​​(**ComputetheBreusch–Paganteststatistic=bp**)​​​​bp=With[{sqResids=lm1["FitResiduals"]^2},(Variance[sqResids](Length[data]-1)-Total[lm2["FitResiduals"]^2])/​​2/(Total[sqResids]/Length[data])^2]​​    (**Computethep-value**)​​1-CDF[ChiSquareDistribution[Length[lm1["BestFitParameters"]]-1],bp]​​
Out[]=
FittedModel
4.92427+1.23597x1-3.41496x2+4+7.49632x6+1.51507x7

Out[]=
0.257806
Out[]=
0.99994
​
​
​
​
​
​
​​
​